').appendTo(this.$sidebar),this.$sourceSettingsContainer=$('
').appendTo(n),this.$footer=$('').appendTo(n),this.$footerBtnContainer=$('
').appendTo(this.$footer),this.$cancelBtn=$("
",{type:"button",class:"btn",text:Craft.t("app","Cancel")}).appendTo(this.$footerBtnContainer),this.$saveBtn=Craft.ui.createSubmitButton({class:"disabled",label:Craft.t("app","Save"),spinner:!0}).appendTo(this.$footerBtnContainer),this.$loadingSpinner=$('
').appendTo(this.$sourceSettingsContainer),this.setContainer(n),this.show(),Craft.sendActionRequest("POST","element-index-settings/get-customize-sources-modal-data",{data:{elementType:this.elementIndex.elementType}}).then((function(t){i.$saveBtn.removeClass("disabled"),i.buildModal(t.data)})).finally((function(){i.$loadingSpinner.remove(),Garnish.setFocusWithin(i.$sidebar)})),this.addListener(this.$cancelBtn,"click","hide"),this.addListener(this.$saveBtn,"click","save"),this.addListener(this.$container,"submit","save")},buildModal:(o=a().mark((function t(e){var i,n,s,r,o,l,h,d=this;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(this.baseSortOptions=e.baseSortOptions,this.defaultSortOptions=e.defaultSortOptions,this.availableTableAttributes=e.availableTableAttributes,this.customFieldAttributes=e.customFieldAttributes,this.elementTypeName=e.elementTypeName,this.conditionBuilderHtml=e.conditionBuilderHtml,this.conditionBuilderJs=e.conditionBuilderJs,this.sites=e.sites,this.userGroups=e.userGroups,!e.headHtml){t.next=12;break}return t.next=12,Craft.appendHeadHtml(e.headHtml);case 12:if(!e.bodyHtml){t.next=15;break}return t.next=15,Craft.appendBodyHtml(e.bodyHtml);case 15:for(this.sourceSort=new Garnish.DragSort({handle:".move",axis:"y"}),this.sources=[],i=0;i
').appendTo(this.$footer),s=$("
",{type:"button",class:"btn menubtn add icon","aria-label":Craft.t("app","Add…"),"aria-controls":"add-source-menu",title:Craft.t("app","Add…"),"data-disclosure-trigger":""}).appendTo(n),this.$addSourceMenu=$("
",{id:"add-source-menu",class:"menu menu--disclosure"}).appendTo(n),r=function(t){var e=d.addSource(t,!0);Garnish.scrollContainerToElement(d.$sidebar,e.$item),e.select(),d.addSourceMenu.hide()},o=$("
",{type:"button",class:"menu-option",text:Craft.t("app","New heading")}).on("click",(function(){r({type:"heading"}),d.focusLabelInput()})),l=$("
",{type:"button",class:"menu-option",text:Craft.t("app","New custom source"),"data-type":"custom"}).on("click",(function(){var t=d.baseSortOptions.slice(0);t.push(d.defaultSortOptions),r({type:"custom",key:"custom:".concat(Craft.uuid()),sortOptions:t,defaultSort:[t[0].attr,t[1].defaultDir],tableAttributes:[],availableTableAttributes:[]}),d.focusLabelInput()})),h=$("
").append($("
").append(o)).appendTo(this.$addSourceMenu),e.conditionBuilderHtml&&$("
").append(l).appendTo(h),Craft.useMobileStyles()&&this.buildSidebarToggleView(),this.addListener(Garnish.$win,"resize",this.updateSidebarView),this.addSourceMenu=new Garnish.DisclosureMenu(s);case 30:case"end":return t.stop()}}),t,this)})),l=function(){var t=this,e=arguments;return new Promise((function(i,n){var s=o.apply(t,e);function a(t){r(s,i,n,a,l,"next",t)}function l(t){r(s,i,n,a,l,"throw",t)}a(void 0)}))},function(t){return l.apply(this,arguments)}),focusLabelInput:function(){this.selectedSource.$labelInput.trigger("focus")},getSourceName:function(){return this.selectedSource?this.selectedSource.sourceData.label:this.sources[0].sourceData.label},updateSidebarView:function(){Craft.useMobileStyles()?this.$sidebarToggleBtn||this.buildSidebarToggleView():this.$sidebarToggleBtn&&this.resetView()},resetView:function(){this.$sourceSettingsHeader&&this.$sourceSettingsHeader.remove(),this.$sourcesHeader&&this.$sourcesHeader.remove(),this.$sidebarToggleBtn=null,this.$container.removeClass("sidebar-hidden")},updateHeading:function(){this.$sourcesHeading&&this.$sourcesHeading.text(this.getSourceName())},buildSidebarToggleView:function(){var t=this;this.$sourcesHeader=$('').addClass("sidebar-header").prependTo(this.$sourcesContainer),this.$sidebarCloseBtn=Craft.ui.createButton({class:"nav-close close-btn"}).attr("aria-label",Craft.t("app","Close")).removeClass("btn").appendTo(this.$sourcesHeader),this.$sourcesHeading=$('
').text(this.getSourceName()),this.$sourceSettingsHeader=$('').addClass("main-header").append(this.$sourcesHeading).prependTo(this.$sourceSettingsContainer),this.$sidebarToggleBtn=Craft.ui.createButton({toggle:!0,controls:"modal-sidebar",class:"nav-toggle"}).removeClass("btn").attr("aria-label",Craft.t("app","Show sidebar")).appendTo(this.$sourceSettingsHeader),this.closeSidebar(),this.addListener(this.$sidebarToggleBtn,"click",(function(){t.toggleSidebar()})),this.addListener(this.$sidebarCloseBtn,"click",(function(){t.toggleSidebar(),t.$sidebarToggleBtn.trigger("focus")}))},toggleSidebar:function(){this.sidebarIsOpen()?this.closeSidebar():this.openSidebar()},openSidebar:function(){var t=this;this.$container.removeClass("sidebar-hidden"),this.$sidebarToggleBtn.attr("aria-expanded","true"),this.$sidebar.find(":focusable").first().focus(),Garnish.uiLayerManager.addLayer(this.$sidebar),Garnish.uiLayerManager.registerShortcut(Garnish.ESC_KEY,(function(){t.closeSidebar(),Garnish.focusIsInside(t.$sidebar)&&t.$sidebarToggleBtn.focus()}))},closeSidebar:function(){this.$container.addClass("sidebar-hidden"),this.$sidebarToggleBtn&&this.$sidebarToggleBtn.attr("aria-expanded","false"),Garnish.uiLayerManager.currentLayer.$container.hasClass("cs-sidebar")&&Garnish.uiLayerManager.removeLayer()},sidebarIsOpen:function(){return"true"===this.$sidebarToggleBtn.attr("aria-expanded")},addSource:function(t,e){var i,n=$('
').appendTo(this.$sourcesContainer),s=$('
').attr({tabindex:"0",role:"button"}).appendTo(n),a=$('
').appendTo(n);return $('
')).appendTo(n),"heading"===t.type?(n.addClass("heading"),a.attr("name","sourceOrder[][heading]"),(i=new Craft.CustomizeSourcesModal.Heading(this,n,s,a,t,e)).updateItemLabel(t.heading)):(a.attr("name","sourceOrder[][key]").val(t.key),(i="native"===t.type?new Craft.CustomizeSourcesModal.Source(this,n,s,a,t,e):new Craft.CustomizeSourcesModal.CustomSource(this,n,s,a,t,e)).updateItemLabel(t.label),t.key===this.elementIndex.rootSourceKey&&i.select()),this.sourceSort.addItems(n),i},save:function(t){var e=this;t&&t.preventDefault(),this.$saveBtn.hasClass("disabled")||this.$saveBtn.hasClass("loading")||(this.$saveBtn.addClass("loading"),Craft.sendActionRequest("POST","element-index-settings/save-customize-sources-modal-settings",{data:this.$container.serialize()+"&elementType=".concat(this.elementIndex.elementType)}).then((function(t){var i=t.data,n=null;e.selectedSource&&e.selectedSource.sourceData.key&&!i.disabledSourceKeys.includes(e.selectedSource.sourceData.key)?n=e.selectedSource.sourceData.key:e.elementIndex.sourceKey||(n=e.elementIndex.$visibleSources.first().data("key")),n&&e.elementIndex.selectSourceByKey(n),window.location.reload()})).catch((function(){Craft.cp.displayError(Craft.t("app","A server error occurred."))})).finally((function(){e.$saveBtn.removeClass("loading")})))},appendIndexSourceItem:function(t,e){if(e){var i=t.hasClass("heading");if(e.hasClass("heading")&&!i)t.appendTo(e.children("ul"));else{if(i){var n=e.parentsUntil(this.$elementIndexSourcesContainer,"li").last();n.length&&(e=n)}t.insertAfter(e)}}else t.prependTo(this.$elementIndexSourcesContainer)},destroy:function(){for(var t=0;t
").appendTo(this.modal.$sourceSettingsContainer),this.createSettings(this.$settingsContainer)),this.modal.$sourceSettingsContainer.scrollTop(0))},createSettings:function(){},getIndexSourceItem:function(){},deselect:function(){this.$item.removeClass("sel"),this.$itemLabel.attr({"aria-current":"false"}),this.modal.selectedSource=null,this.$settingsContainer.addClass("hidden")},updateItemLabel:function(t){t?this.$itemLabel.text(t):this.$itemLabel.html(" ")},destroy:function(){this.modal.sourceSort.removeItems(this.$item),this.modal.sources.splice($.inArray(this,this.modal.sources),1),this.isSelected()&&(this.deselect(),this.modal.sources.length&&this.modal.sources[0].select(),Garnish.setFocusWithin(this.modal.$sourceSettingsContainer)),this.$item.data("source",null),this.$item.remove(),this.$settingsContainer&&this.$settingsContainer.remove(),this.base()}}),Craft.CustomizeSourcesModal.Source=Craft.CustomizeSourcesModal.BaseSource.extend({$sortAttributeSelect:null,$sortDirectionPicker:null,$sortDirectionInput:null,sortDirectionListbox:null,isNative:function(){return!0},createSettings:function(t){Craft.ui.createLightswitchField({label:Craft.t("app","Enabled"),name:"sources[".concat(this.sourceData.key,"][enabled]"),on:!this.sourceData.disabled}).appendTo(t),this.createSortField(t),this.createTableAttributesField(t)},createSortField:function(t){var e=this,i=$(''),n=Craft.ui.createSelect({name:"sources[".concat(this.sourceData.key,"][defaultSort][0]"),options:this.sourceData.sortOptions.map((function(t){return{label:Craft.escapeHtml(t.label),value:t.attr}})),value:this.sourceData.defaultSort[0]}).addClass("fullwidth").appendTo($("").appendTo(i));this.$sortAttributeSelect=n.children("select").attr("aria-label",Craft.t("app","Sort attribute")),this.$sortDirectionPicker=$("",{class:"btngroup btngroup--exclusive","aria-label":Craft.t("app","Sort direction")}).append($("",{type:"button",class:"btn",title:Craft.t("app","Sort ascending"),"aria-label":Craft.t("app","Sort ascending"),"aria-pressed":"false","data-icon":"asc","data-dir":"asc"})).append($("",{type:"button",class:"btn",title:Craft.t("app","Sort descending"),"aria-label":Craft.t("app","Sort descending"),"aria-pressed":"false","data-icon":"desc","data-dir":"desc"})).appendTo(i),this.$sortDirectionInput=$("",{type:"hidden",name:"sources[".concat(this.sourceData.key,"][defaultSort][1]")}).appendTo(i),this.sortDirectionListbox=new Craft.Listbox(this.$sortDirectionPicker,{onChange:function(t){e.$sortDirectionInput.val(t.data("dir"))}}),this.$sortAttributeSelect.on("change",(function(){e.handleSortAttributeChange()})),this.handleSortAttributeChange(!0),Craft.ui.createField(i,{label:Craft.t("app","Default Sort"),fieldset:!0}).appendTo(t).addClass("sort-field")},handleSortAttributeChange:function(t){var e=this.$sortAttributeSelect.val();if("structure"===e)this.sortDirectionListbox.select(0),this.sortDirectionListbox.disable(),this.$sortDirectionPicker.addClass("disabled");else{this.sortDirectionListbox.enable(),this.$sortDirectionPicker.removeClass("disabled");var i=t?this.sourceData.defaultSort[1]:this.sourceData.sortOptions.find((function(t){return t.attr===e})).defaultDir;this.sortDirectionListbox.select("asc"===i?0:1)}},createTableAttributesField:function(t){var e=this.availableTableAttributes();if(this.sourceData.tableAttributes.length||e.length){var n="sources[".concat(this.sourceData.key,"][tableAttributes][]");$("",{type:"hidden",name:n,value:""}).appendTo(t),Craft.ui.createCheckboxSelectField({label:Craft.t("app","Default Table Columns"),instructions:Craft.t("app","Choose which table columns should be visible for this source by default."),name:n,options:e.map((function(t){var e=i(t,2),n=e[0];return{label:e[1],value:n}})),values:this.sourceData.tableAttributes.map((function(t){return i(t,1)[0]})),sortable:!0}).appendTo(t)}},availableTableAttributes:function(){var t=this.modal.availableTableAttributes.slice(0);return t.push.apply(t,e(this.sourceData.availableTableAttributes)),t},getIndexSourceItem:function(){var t=this.modal.elementIndex.getSourceByKey(this.sourceData.key);if(t)return t.closest("li")}}),Craft.CustomizeSourcesModal.CustomSource=Craft.CustomizeSourcesModal.Source.extend({$labelInput:null,createSettings:function(t){var e=this,i=Craft.ui.createTextField({label:Craft.t("app","Label"),name:"sources[".concat(this.sourceData.key,"][label]"),value:this.sourceData.label}).appendTo(t);this.$labelInput=i.find(".text");var n="condition".concat(Math.floor(1e6*Math.random())),s=function(t){return t.replace(/__ID__/g,n).replace(/__SOURCE_KEY__(?=-)/g,Craft.formatInputId(e.sourceData.key)).replace(/__SOURCE_KEY__/g,e.sourceData.key)},a=this.sourceData.conditionBuilderHtml||s(this.modal.conditionBuilderHtml),r=this.sourceData.conditionBuilderJs||s(this.modal.conditionBuilderJs);Craft.ui.createField($("").append(a),{id:"criteria",label:Craft.t("app","{type} Criteria",{type:this.modal.elementTypeName})}).appendTo(t),Craft.appendBodyHtml(r),this.createSortField(t),this.createTableAttributesField(t),Craft.sites.length>1&&Craft.ui.createCheckboxSelectField({label:Craft.t("app","Sites"),instructions:Craft.t("app","Choose which sites this source should be visible for."),name:"sources[".concat(this.sourceData.key,"][sites]"),options:Craft.sites.map((function(t){return{label:t.name,value:t.uid}})),values:this.sourceData.sites||"*",showAllOption:!0}).appendTo(t),this.modal.userGroups.length&&Craft.ui.createCheckboxSelectField({label:Craft.t("app","User Groups"),instructions:Craft.t("app","Choose which user groups should have access to this source."),name:"sources[".concat(this.sourceData.key,"][userGroups]"),options:this.modal.userGroups,values:this.sourceData.userGroups||"*",showAllOption:!0}).appendTo(t),t.append("
"),this.$deleteBtn=$('').attr({role:"button",tabindex:"0"}).text(Craft.t("app","Delete custom source")).appendTo(t),this.addListener(this.$labelInput,"input","handleLabelInputChange"),this.addListener(this.$deleteBtn,"activate","destroy")},availableTableAttributes:function(){var t=this.base();return this.isNew&&t.push.apply(t,e(this.modal.customFieldAttributes)),t},handleLabelInputChange:function(){this.updateItemLabel(this.$labelInput.val())},getIndexSourceItem:function(){var t,e=this.base();if(e?t=e.find(".label"):(t=$("",{class:"label"}),e=$("").append($("",{"data-key":this.sourceData.key}).append(t))),this.$labelInput){var i=this.$labelInput.val().trim();""===i&&(i=Craft.t("app","(blank)")),t.text(i)}return e}}),Craft.CustomizeSourcesModal.Heading=Craft.CustomizeSourcesModal.BaseSource.extend({$labelInput:null,$deleteBtn:null,isHeading:function(){return!0},createSettings:function(t){var e=Craft.ui.createTextField({label:Craft.t("app","Heading"),instructions:Craft.t("app","This can be left blank if you just want an unlabeled separator."),value:this.sourceData.heading||""}).appendTo(t);this.$labelInput=e.find(".text"),t.append("
"),this.$deleteBtn=$('').text(Craft.t("app","Delete heading")).attr({role:"button",tabindex:"0"}).appendTo(t),this.addListener(this.$labelInput,"input","handleLabelInputChange"),this.addListener(this.$deleteBtn,"activate","destroy")},handleLabelInputChange:function(){this.updateItemLabel(this.$labelInput.val())},updateItemLabel:function(t){this.$itemLabel.html((t?Craft.escapeHtml(t):"".concat(Craft.t("app","(blank)"),""))+" "),this.$itemInput.val(t)},getIndexSourceItem:function(){var t=(this.$labelInput?this.$labelInput.val():null)||this.sourceData.heading||"";return $('').append($("").text(t)).append("")}})},1519:function(){Craft.DataTableSorter=Garnish.DragSort.extend({$table:null,init:function(t,e){this.$table=$(t);var i=this.$table.children("tbody").children(":not(.filler)");(e=$.extend({},Craft.DataTableSorter.defaults,e)).container=this.$table.children("tbody"),e.helper=this.getHelper.bind(this),e.caboose="
",e.axis=Garnish.Y_AXIS,e.magnetStrength=4,e.helperLagBase=1.5,this.base(i,e)},getHelper:function(t){var e=$('').appendTo(Garnish.$bod),i=$("").appendTo(e),n=$("").appendTo(i);t.appendTo(n),i.width(this.$table.width()),i.prop("className",this.$table.prop("className"));for(var s=this.$table.find("tr:first").children(),a=t.children(),r=0;r'+Craft.getCsrfInput()+''+(Array.isArray(this.userId)?"":'')+(e.redirect?'':"")+"").appendTo(Garnish.$bod),a=$('").appendTo(s),r=$('').appendTo(a),o=$("",{type:"button",class:"btn",text:Craft.t("app","Cancel")}).appendTo(r),l=a.find(".content-summary");if(e.contentSummary.length)for(var h=0;h",{text:e.contentSummary[h]}));else l.find("ul").remove();if(this.$deleteActionRadios=a.find("input[type=radio]"),this.$deleteSubmitBtn=Craft.ui.createSubmitButton({class:"disabled",label:this._submitBtnLabel(!1),spinner:!0}).appendTo(r),Array.isArray(this.userId)){n=["and"];for(var d=0;d0},initialize:function(){if(this.initialized)return!1;this.initialized=!0,this.removeListener(Garnish.$win,"resize");for(var t=this.$tbody.children(),e=0;ei.width()&&i.css("overflow-x","auto"),this.$addRowBtn=this.$table.next(".add"),this.updateAddRowButton(),this.addListener(this.$addRowBtn,"activate","addRow"),!0},initializeIfVisible:function(){this.removeListener(Garnish.$win,"resize"),this.isVisible()?this.initialize():this.addListener(Garnish.$win,"resize","initializeIfVisible")},updateAddRowButton:function(){this.canAddRow()?(this.$addRowBtn.css("opacity","1"),this.$addRowBtn.css("pointer-events","auto"),this.$addRowBtn.attr("aria-disabled","false")):(this.$addRowBtn.css("opacity","0.2"),this.$addRowBtn.css("pointer-events","none"),this.$addRowBtn.attr("aria-disabled","true"))},updateAllRows:function(){if(!this.settings.staticRows)for(var t=this.$table.find("> tbody > tr"),e=0;ethis.settings.minRows},deleteRow:function(t){this.canDeleteRow()?(this.sorter.removeItems(t.$tr),t.$tr.remove(),this.rowCount--,this.updateAllRows(),this.updateAddRowButton(),0===this.rowCount?(this.$table.addClass("hidden"),this.$addRowBtn.trigger("focus")):this.$tbody.find(":focusable").last().trigger("focus"),this.settings.onDeleteRow(t.$tr),t.destroy()):this.updateStatusMessage()},canAddRow:function(){return!!this.settings.allowAdd&&(!this.settings.maxRows||this.rowCount",{"data-id":e});for(var l in i)if(i.hasOwnProperty(l)){var h,d=i[l],c=void 0!==s[l]?s[l]:"";if("heading"===d.type)h=$(" | ",{scope:"row",class:d.class,html:c});else{var u=n+"["+e+"]["+l+"]";switch(h=$(" | ",{class:"".concat(d.class," ").concat(d.type,"-cell"),width:d.width}),Craft.inArray(d.type,Craft.EditableTable.textualColTypes)&&h.addClass("textual"),d.code&&h.addClass("code"),d.type){case"checkbox":$('').append(Craft.ui.createCheckbox({name:u,value:d.value||"1",checked:!!c})).appendTo(h);break;case"color":Craft.ui.createColorInput({name:u,value:"object"!==t(c)?c:null,small:!0}).appendTo(h);break;case"date":Craft.ui.createDateInput({name:u,value:c}).appendTo(h);break;case"lightswitch":Craft.ui.createLightswitch({name:u,value:d.value||"1",on:!!c,small:!0}).appendTo(h);break;case"select":Craft.ui.createSelect({name:u,options:d.options,value:c||function(){for(var t in d.options)if(d.options.hasOwnProperty(t)&&d.options[t].default)return void 0!==d.options[t].value?d.options[t].value:t;return null}(),class:"small"}).appendTo(h);break;case"time":Craft.ui.createTimeInput({name:u,value:c}).appendTo(h);break;case"email":case"url":Craft.ui.createTextInput({name:u,value:"object"!==t(c)?c:null,type:d.type,placeholder:d.placeholder||null}).appendTo(h);break;default:$("",{name:u,rows:d.rows||1,val:"object"!==t(c)?c:null,placeholder:d.placeholder}).appendTo(h)}}h.appendTo(o)}return a&&$(" | ",{class:"thin action"}).append($("",{class:"move icon",title:Craft.t("app","Reorder"),role:"button",type:"button"})).appendTo(o),r&&$(" | ",{class:"thin action"}).append($("",{class:"delete icon",title:Craft.t("app","Delete"),type:"button"})).appendTo(o),o}}),Craft.EditableTable.Row=Garnish.Base.extend({table:null,id:null,niceTexts:null,$tr:null,$tds:null,tds:null,$textareas:null,$deleteBtn:null,init:function(t,e){this.table=t,this.$tr=$(e),this.$tds=this.$tr.children(),this.tds=[],this.id=this.$tr.attr("data-id"),this.$tr.data("editable-table-row",this);var i=parseInt(this.id.substring(this.table.settings.rowIdPrefix.length));i>this.table.biggestId&&(this.table.biggestId=i),this.$textareas=$(),this.niceTexts=[];var n,s,a,r,o,l={},h=0;for(n in this.table.columns)this.table.columns.hasOwnProperty(n)&&(s=this.table.columns[n],a=this.tds[n]=this.$tds[h],Craft.inArray(s.type,Craft.EditableTable.textualColTypes)?(r=$("textarea",a),this.$textareas=this.$textareas.add(r),this.addListener(r,"focus","onTextareaFocus"),this.addListener(r,"mousedown","ignoreNextTextareaFocus"),this.niceTexts.push(new Garnish.NiceText(r,{onHeightChange:this.onTextareaHeightChange.bind(this)})),this.addListener(r,"keypress",{tdIndex:h,type:s.type},"handleKeypress"),this.addListener(r,"input",{type:s.type},"validateValue"),r.trigger("input"),"multiline"!==s.type&&this.addListener(r,"paste",{tdIndex:h,type:s.type},"handlePaste"),l[n]=r):"checkbox"===s.type&&(o=$('input[type="checkbox"]',a),s.radioMode&&(void 0===this.table.radioCheckboxes[n]&&(this.table.radioCheckboxes[n]=[]),this.table.radioCheckboxes[n].push(o[0]),this.addListener(o,"change",{colId:n},"onRadioCheckboxChange")),s.toggle&&this.addListener(o,"change",{colId:n},(function(t){this.applyToggleCheckbox(t.data.colId)}))),$(a).hasClass("disabled")||this.addListener(a,"click",{td:a},(function(t){t.target===t.data.td&&$(t.data.td).find("textarea,input,select,.lightswitch").focus()})),h++);for(n in this.onTextareaHeightChange(),this.table.columns)this.table.columns.hasOwnProperty(n)&&"checkbox"===(s=this.table.columns[n]).type&&s.toggle&&this.applyToggleCheckbox(n);for(n in this.table.columns)this.table.columns.hasOwnProperty(n)&&(!(s=this.table.columns[n]).autopopulate||void 0===l[s.autopopulate]||l[n].val()||l[s.autopopulate].val()||new Craft.HandleGenerator(l[n],l[s.autopopulate],{allowNonAlphaStart:!0}));var d=this.$tr.children().last().find(".delete");this.addListener(d,"click","deleteRow");var c=this.$tr.find("input,textarea,select,.lightswitch");this.addListener(c,"focus",(function(t){$(t.currentTarget).closest("td:not(.disabled)").addClass("focus")})),this.addListener(c,"blur",(function(t){$(t.currentTarget).closest("td").removeClass("focus")}))},onTextareaFocus:function(t){this.onTextareaHeightChange();var e=$(t.currentTarget);e.data("ignoreNextFocus")?e.data("ignoreNextFocus",!1):window.setTimeout((function(){Craft.selectFullValue(e)}),0)},onRadioCheckboxChange:function(t){if(t.currentTarget.checked)for(var e=0;et&&(t=this.niceTexts[e].height);this.$textareas.css("min-height",t);var i=this.$textareas.filter(":visible").first().parent().height();i>t&&this.$textareas.css("min-height",i)},deleteRow:function(){this.table.deleteRow(this)}},{numericKeyCodes:[9,8,37,38,39,40,45,91,46,190,48,49,50,51,52,53,54,55,56,57]})},8468:function(){function t(e){return t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},t(e)}function e(){"use strict";e=function(){return i};var i={},n=Object.prototype,s=n.hasOwnProperty,a=Object.defineProperty||function(t,e,i){t[e]=i.value},r="function"==typeof Symbol?Symbol:{},o=r.iterator||"@@iterator",l=r.asyncIterator||"@@asyncIterator",h=r.toStringTag||"@@toStringTag";function d(t,e,i){return Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{d({},"")}catch(t){d=function(t,e,i){return t[e]=i}}function c(t,e,i,n){var s=e&&e.prototype instanceof f?e:f,r=Object.create(s.prototype),o=new x(n||[]);return a(r,"_invoke",{value:w(t,i,o)}),r}function u(t,e,i){try{return{type:"normal",arg:t.call(e,i)}}catch(t){return{type:"throw",arg:t}}}i.wrap=c;var p={};function f(){}function g(){}function m(){}var v={};d(v,o,(function(){return this}));var b=Object.getPrototypeOf,$=b&&b(b(E([])));$&&$!==n&&s.call($,o)&&(v=$);var C=m.prototype=f.prototype=Object.create(v);function _(t){["next","throw","return"].forEach((function(e){d(t,e,(function(t){return this._invoke(e,t)}))}))}function y(e,i){function n(a,r,o,l){var h=u(e[a],e,r);if("throw"!==h.type){var d=h.arg,c=d.value;return c&&"object"==t(c)&&s.call(c,"__await")?i.resolve(c.__await).then((function(t){n("next",t,o,l)}),(function(t){n("throw",t,o,l)})):i.resolve(c).then((function(t){d.value=t,o(d)}),(function(t){return n("throw",t,o,l)}))}l(h.arg)}var r;a(this,"_invoke",{value:function(t,e){function s(){return new i((function(i,s){n(t,e,i,s)}))}return r=r?r.then(s,s):s()}})}function w(t,e,i){var n="suspendedStart";return function(s,a){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===s)throw a;return{value:void 0,done:!0}}for(i.method=s,i.arg=a;;){var r=i.delegate;if(r){var o=S(r,i);if(o){if(o===p)continue;return o}}if("next"===i.method)i.sent=i._sent=i.arg;else if("throw"===i.method){if("suspendedStart"===n)throw n="completed",i.arg;i.dispatchException(i.arg)}else"return"===i.method&&i.abrupt("return",i.arg);n="executing";var l=u(t,e,i);if("normal"===l.type){if(n=i.done?"completed":"suspendedYield",l.arg===p)continue;return{value:l.arg,done:i.done}}"throw"===l.type&&(n="completed",i.method="throw",i.arg=l.arg)}}}function S(t,e){var i=t.iterator[e.method];if(void 0===i){if(e.delegate=null,"throw"===e.method){if(t.iterator.return&&(e.method="return",e.arg=void 0,S(t,e),"throw"===e.method))return p;e.method="throw",e.arg=new TypeError("The iterator does not provide a 'throw' method")}return p}var n=u(i,t.iterator,e.arg);if("throw"===n.type)return e.method="throw",e.arg=n.arg,e.delegate=null,p;var s=n.arg;return s?s.done?(e[t.resultName]=s.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,p):s:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,p)}function I(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function T(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function x(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(I,this),this.reset(!0)}function E(t){if(t){var e=t[o];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var i=-1,n=function e(){for(;++i=0;--n){var a=this.tryEntries[n],r=a.completion;if("root"===a.tryLoc)return i("end");if(a.tryLoc<=this.prev){var o=s.call(a,"catchLoc"),l=s.call(a,"finallyLoc");if(o&&l){if(this.prev=0;--i){var n=this.tryEntries[i];if(n.tryLoc<=this.prev&&s.call(n,"finallyLoc")&&this.prev=0;--e){var i=this.tryEntries[e];if(i.finallyLoc===t)return this.complete(i.completion,i.afterLoc),T(i),p}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var i=this.tryEntries[e];if(i.tryLoc===t){var n=i.completion;if("throw"===n.type){var s=n.arg;T(i)}return s}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,i){return this.delegate={iterator:E(t),resultName:e,nextLoc:i},"next"===this.method&&(this.arg=void 0),p}},i}function i(t,e,i,n,s,a,r){try{var o=t[a](r),l=o.value}catch(t){return void i(t)}o.done?e(l):Promise.resolve(l).then(n,s)}function n(t){return function(){var e=this,n=arguments;return new Promise((function(s,a){var r=t.apply(e,n);function o(t){i(r,s,a,o,l,"next",t)}function l(t){i(r,s,a,o,l,"throw",t)}o(void 0)}))}}var s,a;Craft.ElementActionTrigger=Garnish.Base.extend({elementIndex:null,maxLevels:null,newChildUrl:null,$trigger:null,$selectedItems:null,triggerEnabled:!0,init:function(t){if(this.elementIndex=Craft.currentElementIndex,this.elementIndex.triggers.push(this),$.isPlainObject(t)||(t={}),void 0!==t.batch&&(t.bulk=t.batch,delete t.batch),Object.defineProperty(t,"batch",{get:function(){return this.bulk},set:function(t){this.bulk=t}}),this.setSettings(t,Craft.ElementActionTrigger.defaults),this.$trigger=$("#".concat(this.elementIndex.namespaceId(t.type),"-actiontrigger")).data("trigger",this),this.settings.activate){this.$trigger.data("custom-handler",!0);var e=this.$trigger.find("button,.btn");e.length||(e=this.$trigger),this.addListener(e,"activate","handleTriggerActivation")}this.updateTrigger(),this.elementIndex.on("selectionChange",this.updateTrigger.bind(this))},updateTrigger:function(){0!==this.elementIndex.getSelectedElements().length&&(this.validateSelection()?this.enableTrigger():this.disableTrigger())},validateSelection:function(){var t=this;return this.$selectedItems=this.elementIndex.getSelectedElements(),!(!this.settings.bulk&&this.$selectedItems.length>1)&&(!this.settings.requireId||!this.$selectedItems.is('[data-id=""]'))&&("function"!=typeof this.settings.validateSelection||this._call((function(){return t.settings.validateSelection(t.$selectedItems,t.elementIndex)})))},enableTrigger:function(){this.triggerEnabled||(this.$trigger.removeClass("disabled").removeAttr("aria-disabled"),this.triggerEnabled=!0)},disableTrigger:function(){this.triggerEnabled&&(this.$trigger.addClass("disabled").attr("aria-disabled","true"),this.triggerEnabled=!1)},handleTriggerActivation:function(){var t=this;this.triggerEnabled&&this._call((function(){return t.settings.activate(t.$selectedItems,t.elementIndex)}))},_call:function(t){var e=Craft.elementIndex;Craft.elementIndex=this.elementIndex;var i=t();return Craft.elementIndex=e,i}},{defaults:{type:null,bulk:!0,requireId:!0,validateSelection:null,beforeActivate:(a=n(e().mark((function t(i,n){return e().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:case"end":return t.stop()}}),t)}))),function(t,e){return a.apply(this,arguments)}),activate:null,afterActivate:(s=n(e().mark((function t(i,n){return e().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:case"end":return t.stop()}}),t)}))),function(t,e){return s.apply(this,arguments)})}})},5049:function(){function t(e){return t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},t(e)}function e(){"use strict";e=function(){return i};var i={},n=Object.prototype,s=n.hasOwnProperty,a=Object.defineProperty||function(t,e,i){t[e]=i.value},r="function"==typeof Symbol?Symbol:{},o=r.iterator||"@@iterator",l=r.asyncIterator||"@@asyncIterator",h=r.toStringTag||"@@toStringTag";function d(t,e,i){return Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{d({},"")}catch(t){d=function(t,e,i){return t[e]=i}}function c(t,e,i,n){var s=e&&e.prototype instanceof f?e:f,r=Object.create(s.prototype),o=new x(n||[]);return a(r,"_invoke",{value:w(t,i,o)}),r}function u(t,e,i){try{return{type:"normal",arg:t.call(e,i)}}catch(t){return{type:"throw",arg:t}}}i.wrap=c;var p={};function f(){}function g(){}function m(){}var v={};d(v,o,(function(){return this}));var b=Object.getPrototypeOf,$=b&&b(b(E([])));$&&$!==n&&s.call($,o)&&(v=$);var C=m.prototype=f.prototype=Object.create(v);function _(t){["next","throw","return"].forEach((function(e){d(t,e,(function(t){return this._invoke(e,t)}))}))}function y(e,i){function n(a,r,o,l){var h=u(e[a],e,r);if("throw"!==h.type){var d=h.arg,c=d.value;return c&&"object"==t(c)&&s.call(c,"__await")?i.resolve(c.__await).then((function(t){n("next",t,o,l)}),(function(t){n("throw",t,o,l)})):i.resolve(c).then((function(t){d.value=t,o(d)}),(function(t){return n("throw",t,o,l)}))}l(h.arg)}var r;a(this,"_invoke",{value:function(t,e){function s(){return new i((function(i,s){n(t,e,i,s)}))}return r=r?r.then(s,s):s()}})}function w(t,e,i){var n="suspendedStart";return function(s,a){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===s)throw a;return{value:void 0,done:!0}}for(i.method=s,i.arg=a;;){var r=i.delegate;if(r){var o=S(r,i);if(o){if(o===p)continue;return o}}if("next"===i.method)i.sent=i._sent=i.arg;else if("throw"===i.method){if("suspendedStart"===n)throw n="completed",i.arg;i.dispatchException(i.arg)}else"return"===i.method&&i.abrupt("return",i.arg);n="executing";var l=u(t,e,i);if("normal"===l.type){if(n=i.done?"completed":"suspendedYield",l.arg===p)continue;return{value:l.arg,done:i.done}}"throw"===l.type&&(n="completed",i.method="throw",i.arg=l.arg)}}}function S(t,e){var i=t.iterator[e.method];if(void 0===i){if(e.delegate=null,"throw"===e.method){if(t.iterator.return&&(e.method="return",e.arg=void 0,S(t,e),"throw"===e.method))return p;e.method="throw",e.arg=new TypeError("The iterator does not provide a 'throw' method")}return p}var n=u(i,t.iterator,e.arg);if("throw"===n.type)return e.method="throw",e.arg=n.arg,e.delegate=null,p;var s=n.arg;return s?s.done?(e[t.resultName]=s.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,p):s:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,p)}function I(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function T(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function x(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(I,this),this.reset(!0)}function E(t){if(t){var e=t[o];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var i=-1,n=function e(){for(;++i=0;--n){var a=this.tryEntries[n],r=a.completion;if("root"===a.tryLoc)return i("end");if(a.tryLoc<=this.prev){var o=s.call(a,"catchLoc"),l=s.call(a,"finallyLoc");if(o&&l){if(this.prev=0;--i){var n=this.tryEntries[i];if(n.tryLoc<=this.prev&&s.call(n,"finallyLoc")&&this.prev=0;--e){var i=this.tryEntries[e];if(i.finallyLoc===t)return this.complete(i.completion,i.afterLoc),T(i),p}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var i=this.tryEntries[e];if(i.tryLoc===t){var n=i.completion;if("throw"===n.type){var s=n.arg;T(i)}return s}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,i){return this.delegate={iterator:E(t),resultName:e,nextLoc:i},"next"===this.method&&(this.arg=void 0),p}},i}function i(t,e,i,n,s,a,r){try{var o=t[a](r),l=o.value}catch(t){return void i(t)}o.done?e(l):Promise.resolve(l).then(n,s)}function n(t,e){if(t){if("string"==typeof t)return s(t,e);var i=Object.prototype.toString.call(t).slice(8,-1);return"Object"===i&&t.constructor&&(i=t.constructor.name),"Map"===i||"Set"===i?Array.from(t):"Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?s(t,e):void 0}}function s(t,e){(null==e||e>t.length)&&(e=t.length);for(var i=0,n=new Array(e);i",{class:"revision-spinner spinner hidden",title:Craft.t("app","Saving")}).appendTo(r),this.$statusIcon=$("",{class:"revision-status ".concat(this.isFullPage?"invisible":"hidden")}).appendTo(r),this.$statusMessage=$("",{class:"revision-status-message visually-hidden","aria-live":"polite"}).appendTo(r),this.$expandSiteStatusesBtn=$(".expand-status-btn"),this.settings.canEditMultipleSites&&this.addListener(this.$expandSiteStatusesBtn,"click","expandSiteStatuses"),this.settings.previewTargets.length&&this.isFullPage){this.settings.enablePreview&&this.addListener(this.$previewBtn,"click","openPreview");var o=this.$container.find(".preview-btn-container");if(1===this.settings.previewTargets.length){var l=(s=this.settings.previewTargets,a=1,function(t){if(Array.isArray(t))return t}(s)||function(t,e){var i=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=i){var n,s,a=[],r=!0,o=!1;try{for(i=i.call(t);!(r=(n=i.next()).done)&&(a.push(n.value),!e||a.length!==e);r=!0);}catch(t){o=!0,s=t}finally{try{r||null==i.return||i.return()}finally{if(o)throw s}}return a}}(s,a)||n(s,a)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())[0];this.createPreviewLink(l).addClass("view-btn btn").attr("aria-label",Craft.t("app","View")).appendTo(o)}else this.createShareMenu(o)}this.settings.revisionId||(this.isFullPage&&Craft.edition===Craft.Pro&&(this.$activityContainer=this.$container.find(".activity-container"),this._checkActivity()),this.$container.data("serializer",(function(){return i.serializeForm(!0)})),this.$container.data("initialSerializedValue",this.serializeForm(!0)),Garnish.requestAnimationFrame((function(){i.$container.data("initialSerializedValue",i.serializeForm(!0))})),this.isFullPage&&this.addListener(this.$container,"submit","handleSubmit"),this.settings.isProvisionalDraft?this.initForProvisionalDraft():this.settings.draftId&&!this.settings.isUnpublishedDraft?this.initForDraft():this.settings.canSaveCanonical||this.addListener(this.$container,"submit.saveShortcut",(function(t){t.saveShortcut&&(t.preventDefault(),i.saveDraft(),i.removeListener(i.$container,"submit.saveShortcut"))})),this.listenForChanges(),this.addListener(this.$statusIcon,"click",(function(){i.showStatusHud(i.$statusIcon)})),this.handleDismissibleTips(),this.isFullPage&&Craft.messageReceiver&&Craft.broadcaster.addEventListener("message",(function(t){if("saveDraft"===t.data.event&&t.data.canonicalId===i.settings.canonicalId&&(t.data.draftId===i.settings.draftId||t.data.isProvisionalDraft&&!i.settings.draftId)||"saveElement"===t.data.event&&t.data.id===i.settings.canonicalId&&!i.settings.draftId)Craft.setLocalStorage("scrollY",window.scrollY),window.location.reload();else if("deleteDraft"===t.data.event&&t.data.canonicalId===i.settings.canonicalId&&t.data.draftId===i.settings.draftId){var e=new URL(window.location.href);e.searchParams.delete("draftId"),e.href!==document.location.href?window.location.href=e:(Craft.setLocalStorage("scrollY",window.scrollY),window.location.reload())}})),this.activityTooltips={},this.isFullPage&&Craft.ui.setFocusOnErrorSummary(this.$container))},_createQueue:function(){var t=this,e=new Craft.Queue;return e.on("beforeRun",(function(){t.showSpinner()})),e.on("afterRun",(function(){t.hideSpinner()})),e},get namespace(){return this.isFullPage?null:this.slideout.namespace},namespaceInputName:function(t){return Craft.namespaceInputName(t,this.namespace)},namespaceId:function(t){return Craft.namespaceId(t,this.namespace)},listenForChanges:function(){var t=this;if(!(this.listeningForChanges||this.pauseLevel>0)&&this.enableAutosave&&this.settings.canCreateDrafts){this.listeningForChanges=!0;var e=this.isFullPage?Garnish.$bod:this.$container;this.addListener(e.find(".selectized"),"selectizedropdownopen",(function(e){t.pause()})),this.addListener(e.find(".selectized"),"selectizedropdownclose",(function(e){t.resume(!1)})),this.addListener(e,"keypress,keyup,change,focus,blur,click,mousedown,mouseup",(function(e){$(e.target).is(t.statusIcons())||0==t.pauseLevel&&(clearTimeout(t.timeout),["keypress","keyup","change"].includes(e.type)?t.timeout=setTimeout(t.checkForm.bind(t),500):t.checkForm())}))}},stopListeningForChanges:function(){this.listeningForChanges&&(this.removeListener(Garnish.$bod,"keypress,keyup,change,focus,blur,click,mousedown,mouseup"),clearTimeout(this.timeout),this.listeningForChanges=!1)},pause:function(){this.pauseLevel++,this.stopListeningForChanges()},resume:function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];if(0===this.pauseLevel)throw"Craft.ElementEditor::resume() should only be called after pause().";this.pauseLevel--,0===this.pauseLevel&&this.enableAutosave&&(t&&this.checkForm(),this.listenForChanges())},initForProvisionalDraft:function(){var t=this,e=this.$container.find(".discard-changes-btn");if(!e.length){var i,n,s;this.isFullPage?(i=$("#content").height(),n=Garnish.$win.scrollTop(),s=Craft.cp.$noticeContainer):s=this.$container.find(".so-notice");var a=$("",{class:"draft-notice"}).append($("",{class:"draft-icon","aria-hidden":"true","data-icon":"edit"})).append($("",{text:Craft.t("app","Showing your unsaved changes.")})).appendTo(s);if(e=$("",{type:"button",class:"discard-changes-btn btn",text:Craft.t("app","Discard")}).appendTo(a),this.isFullPage){var r=$("#content").height()-i;if(Garnish.$win.scrollTop(n+r),Garnish.$win.scrollTop()===n){Craft.cp.$contentContainer.css("pointer-events","none"),$("#content-header").css("min-height","auto");var o=s.height();s.css({height:o-r,overflow:"hidden"}).velocity({height:o},"fast",(function(){$("#content-header").css("min-height",""),s.css({height:"",overflow:""}),setTimeout((function(){Craft.cp.$contentContainer.css("pointer-events","")}),300)}))}}}this.addListener(e,"keypress,keyup,change,focus,blur,click,mousedown,mouseup",(function(t){t.stopPropagation()})),this.addListener(e,"click",(function(){confirm(Craft.t("app","Are you sure you want to discard your changes?"))&&t.queue.unshift((function(){return new Promise((function(e,i){t.isFullPage?Craft.submitForm(t.$container,{action:"elements/delete-draft",redirect:t.settings.hashedCpEditUrl,params:{draftId:t.settings.draftId,provisional:1}}):Craft.sendActionRequest("POST","elements/delete-draft",{data:{elementId:t.settings.canonicalId,draftId:t.settings.draftId,provisional:1}}).then((function(e){Craft.cp.displaySuccess(e.data.message),t.slideout.close()})).catch(i)}))}))}))},initForDraft:function(){var t=this;this.createEditMetaBtn(),this.settings.canSaveCanonical&&Garnish.uiLayerManager.registerShortcut({keyCode:Garnish.S_KEY,ctrl:!0,alt:!0},(function(){Craft.submitForm(t.$container,{action:"elements/apply-draft",redirect:t.settings.hashedCpEditUrl})}),0)},expandSiteStatuses:function(){var t=this;this.removeListener(this.$expandSiteStatusesBtn,"click"),this.$expandSiteStatusesBtn.velocity({opacity:0},"fast",(function(){t.$expandSiteStatusesBtn.remove()}));var e=this.$container.find(".enabled-for-site-".concat(this.settings.siteId,"-field"));if(this.$siteStatusPane=e.parent(),this.settings.revisionId)this._getOtherSupportedSites().forEach((function(e){return t._createSiteStatusField(e)}));else{e.addClass("nested");var i=Craft.ui.createLightswitchField({label:Craft.t("app","Enabled for all sites"),name:this.namespaceInputName("enabled")}).insertBefore(e);i.find("label").css("font-weight","bold"),this.$globalLightswitch=i.find(".lightswitch"),this.settings.revisionId||this._showField(i);var n=Object.values(this.settings.siteStatuses),s=n.includes(!0),a=n.includes(!1),r=s&&a?"-":s?"1":"",o=encodeURIComponent(this.namespaceInputName("enabledForSite[".concat(this.settings.siteId,"]")))+"="+(this.settings.enabledForSite?"1":"");this.$siteLightswitches=e.find(".lightswitch").on("change",this._updateGlobalStatus.bind(this)),this._getOtherSupportedSites().forEach((function(e){return t._createSiteStatusField(e)}));for(var l=encodeURIComponent(this.namespaceInputName("enabled"))+"=".concat(r),h=0;h",{text:Craft.t("app","Add a site..."),class:"visually-hidden",id:a}),o=Craft.ui.createSelect({options:[{label:Craft.t("app","Add a site…")}].concat((t=i.map((function(t){return{label:t.name,value:t.id}})),function(t){if(Array.isArray(t))return s(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||n(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())),labelledBy:a}).addClass("fullwidth");this.$additionalSiteField=Craft.ui.createField(o,{}).addClass("nested add").appendTo(this.$siteStatusPane),r.prependTo(this.$additionalSiteField);var l=o.find("select");l.on("change",(function(){var t=parseInt(l.val()),i=Craft.sites.find((function(e){return e.id===t}));if(i){var n=e.settings.additionalSites.find((function(t){return t.siteId==i.id}));e._createSiteStatusField(i,n.enabledByDefault),e._updateGlobalStatus(),l.val("").find('option[value="'.concat(t,'"]')).remove(),null===e.newSiteIds&&(e.newSiteIds=[]),e.siteIds.push(t),e.newSiteIds.push(t),1===l.find("option").length&&e._removeField(e.$additionalSiteField)}})),this._showField(this.$additionalSiteField)}},showStatusHud:function(t){var e;this.failed?(e=''.concat(this._saveFailMessage(),"
"),this.httpError&&(e+=''.concat(Craft.escapeHtml(this.httpError),"
")),400===this.httpStatus&&(e+='"))):e="".concat(this._saveSuccessMessage(),"
");var i=new Garnish.HUD(t,e,{hudClass:"hud revision-status-hud",onHide:function(){i.destroy()}});i.$mainContainer.find(".refresh-btn").on("click",(function(){window.location.reload()}))},_saveSuccessMessage:function(){return this.settings.isProvisionalDraft||this.settings.isUnpublishedDraft?Craft.t("app","Your changes have been stored."):Craft.t("app","The draft has been saved.")},_saveFailMessage:function(){return this.settings.isProvisionalDraft||this.settings.isUnpublishedDraft?Craft.t("app","Your changes could not be stored."):Craft.t("app","The draft could not be saved.")},spinners:function(){return this.preview?this.$spinner.add(this.preview.$spinner):this.$spinner},showSpinner:function(){this.spinners().removeClass("hidden")},hideSpinner:function(){this.spinners().addClass("hidden")},statusIcons:function(){return this.preview?this.$statusIcon.add(this.preview.$statusIcon):this.$statusIcon},statusMessage:function(){return this.preview?this.$statusMessage.add(this.preview.$statusMessage):this.$statusMessage},createEditMetaBtn:function(){var t=this.$container.find(".context-btngroup");this.$editMetaBtn=$("",{type:"button",class:"btn edit icon","aria-expanded":"false","aria-label":Craft.t("app","Edit draft settings"),title:Craft.t("app","Edit draft settings")}).appendTo(t),t.find(".btngroup-btn-last").removeClass("btngroup-btn-last"),this.addListener(this.$editMetaBtn,"click","showMetaHud")},createPreviewLink:function(t,e){var i=this,n=$("",{href:this.getTokenizedPreviewUrl(t.url,null,!1),text:e||Craft.t("app","View"),target:"_blank",data:{targetUrl:t.url,targetLabel:t.label}});return this.addListener(n,"click",(function(){setTimeout((function(){i.activatePreviewToken()}),1)})),this.previewLinks.push(n),n},updatePreviewLinks:function(){var t=this;this.previewLinks.forEach((function(e){t.updatePreviewLinkHref(e),t.activatedPreviewToken&&t.removeListener(e,"click")}))},updatePreviewLinkHref:function(t){t.attr("href",this.getTokenizedPreviewUrl(t.data("targetUrl"),null,!1))},activatePreviewToken:function(){this.settings.isLive||(this.activatedPreviewToken=!0,this.updatePreviewLinks())},createShareMenu:function(t){var e=this,i=$("",{type:"button",class:"view-btn btn menubtn",text:Craft.t("app","View")}).appendTo(t),n=$("",{class:"menu"}).appendTo(t),s=$("").appendTo(n);this.settings.previewTargets.forEach((function(t){$("").append(e.createPreviewLink(t,t.label)).appendTo(s)})),new Garnish.MenuBtn(i)},getPreviewTokenParams:function(){var t={elementType:this.settings.elementType,canonicalId:this.settings.canonicalId,siteId:this.settings.siteId,revisionId:this.settings.revisionId,previewToken:this.settings.previewToken};return this.settings.draftId&&!this.settings.isProvisionalDraft&&(t.draftId=this.settings.draftId),t},getPreviewToken:function(){var t=this;return this.previewTokenQueue.push((function(){return new Promise((function(e,i){t.activatedPreviewToken?e(t.settings.previewToken):Craft.sendActionRequest("POST","preview/create-token",{data:t.getPreviewTokenParams()}).then((function(){t.activatePreviewToken(),e(t.settings.previewToken)})).catch(i)}))}))},getTokenizedPreviewUrl:function(t,e,i){var n=this;void 0===i&&(i=!0);var s={};if(!e&&this.settings.isLive||(s[e||"x-craft-preview"]=Craft.randomString(10)),this.settings.siteToken&&(s[Craft.siteToken]=this.settings.siteToken),this.settings.isLive){var a=Craft.getUrl(t,s);return i?new Promise((function(t){t(a)})):a}if(!this.settings.previewToken)throw"Missing preview token";s[Craft.tokenParam]=this.settings.previewToken;var r=Craft.getUrl(t,s);if(this.activatedPreviewToken)return i?new Promise((function(t){t(r)})):r;if(i)return new Promise((function(t,e){n.getPreviewToken().then((function(){t(r)})).catch(e)}));var o=this.getPreviewTokenParams();return o.redirect=r,Craft.getActionUrl("preview/create-token",o)},getPreview:function(){var t=this;return this.preview||(this.preview=new Craft.Preview(this),this.enableAutosave||(this.preview.on("open",(function(){t.enableAutosave=!0,t.listenForChanges()})),this.preview.on("close",(function(){t.enableAutosave=!1,t.stopListeningForChanges();var e=t.statusIcons();e.hasClass("checkmark-icon")&&e.addClass("hidden")}))),this.preview.on("close",(function(){t.scrollY&&(window.scrollTo(0,t.scrollY),t.scrollY=null)}))),this.preview},openPreview:function(){var t=this;Garnish.hasAttr(this.$previewBtn,"aria-disabled")||(this.$previewBtn.attr("aria-disabled",!0),this.$previewBtn.addClass("loading"),this.queue.push((function(){return new Promise((function(e,i){t.openingPreview=!0,t.ensureIsDraftOrRevision(!0).then((function(){t.scrollY=window.scrollY,t.$previewBtn.removeAttr("aria-disabled"),t.$previewBtn.removeClass("loading"),t.getPreview().open(),t.openingPreview=!1,e()})).catch(i)}))})))},ensureIsDraftOrRevision:function(t){var e=this;return new Promise((function(i,n){if(e.settings.draftId||e.settings.revisionId)i();else{if(t&&e.serializeForm(!0)===e.$container.data("initialSerializedValue"))return void i();e.saveDraft().then(i).catch(n)}}))},markFieldAsDirty:(a=e().mark((function t(i){return e().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!this.settings.revisionId){t.next=2;break}throw"Unable to mark fields as dirty on a revision.";case 2:return t.next=4,this.saveDraft({dirtyFields:[i]});case 4:case"end":return t.stop()}}),t,this)})),r=function(){var t=this,e=arguments;return new Promise((function(n,s){var r=a.apply(t,e);function o(t){i(r,n,s,o,l,"next",t)}function l(t){i(r,n,s,o,l,"throw",t)}o(void 0)}))},function(t){return r.apply(this,arguments)}),serializeForm:function(t){var e=this.$container.serialize();if(this.isPreviewActive()&&(e=e.replace("__PREVIEW_FIELDS__=1",this.preview.$editor.serialize())),t&&!this.settings.isUnpublishedDraft){var i=encodeURIComponent(this.namespaceInputName("action")),n=encodeURIComponent(this.namespaceInputName("redirect"));e=(e=e.replace(new RegExp("&".concat(Craft.escapeRegex(i),"=[^&]*")),"")).replace(new RegExp("&".concat(Craft.escapeRegex(n),"=[^&]*")),"")}return e.replace(/&elementindex-[^&]*/g,"")},checkForm:function(t){var e=this;return this.queue.push((function(){return new Promise((function(i,n){if(e.settings.revisionId||e.pauseLevel>0||!e.enableAutosave||!e.settings.canCreateDrafts)i();else if(clearTimeout(e.timeout),e.timeout=null,void 0!==e.$container.data("initialSerializedValue")){var s=e.serializeForm(!0);t||s!==(e.lastSerializedValue||e.$container.data("initialSerializedValue"))?e._saveDraftInternal(s).then(i).catch((function(t){console.warn("Couldn’t save draft:",t),n(t)})):i()}else e.timeout=setTimeout(e.checkForm.bind(e),500)}))}))},isPreviewActive:function(){return this.preview&&this.preview.isActive},saveDraft:function(t){var e=this;return this.queue.push((function(){return new Promise((function(i,n){e._saveDraftInternal(e.serializeForm(!0),t).then(i).catch(n)}))}))},_saveDraftInternal:function(t,e){var i=this;return new Promise((function(n,s){if(i.submittingForm)s("Form already being submitted.");else{i.lastSerializedValue=t,i.failed=!1,i.httpStatus=null,i.httpError=null,i.cancelToken=axios.CancelToken.source(),i.statusIcons().velocity("stop").css("opacity","").removeClass("hidden invisible checkmark-icon alert-icon fade-out").addClass("hidden"),i.statusMessage().empty(),i.$saveMetaBtn&&i.$saveMetaBtn.addClass("active");var a=[],r=i.prepareData(t,i.settings.isUnpublishedDraft?null:function(t,e){e.length&&a.push(decodeURIComponent(e[0].split("=")[0]))});e||(e={}),e[i.namespaceInputName("visibleLayoutElements")]=i.settings.visibleLayoutElements,!i.settings.isProvisionalDraft&&i.settings.draftId||(e[i.namespaceInputName("provisional")]=1);var o=i.$contentContainer.children("[data-layout-tab]:not(.hidden)").data("id");o&&(e[i.namespaceInputName("selectedTab")]=o),r+="&".concat($.param(e)),Craft.sendActionRequest("POST","elements/save-draft",{cancelToken:i.cancelToken.token,headers:i._saveHeaders,data:r}).then((function(s){var r=i.$contentContainer.children("[data-layout-tab]:not(.hidden)").data("id");i._afterSaveDraft();var l=!i.settings.draftId;l&&(i.settings.isProvisionalDraft=!0,i.$revisionLabel.append($("",{text:" — ".concat(Craft.t("app","Edited"))}))),i.isFullPage&&(s.data.title&&i.$container.find(".screen-title").text(s.data.title),s.data.docTitle&&(document.title=s.data.docTitle)),i.settings.isProvisionalDraft||(i.$revisionLabel.text(s.data.draftName),i.settings.draftName=s.data.draftName);var h=i.$revisionBtn.data("menubtn")?i.$revisionBtn.data("menubtn").menu:null;i.newSiteIds&&(h||(i.$revisionBtn.removeClass("disabled").addClass("menubtn"),new Garnish.MenuBtn(i.$revisionBtn),(h=i.$revisionBtn.data("menubtn").menu).$container.removeClass("hidden")),i.newSiteIds.forEach((function(t){var e=h.$options.filter("[data-site-id=".concat(t,"]")),n=i.settings.additionalSites.find((function(e){return e.siteId==t}));n&&void 0!==n.enabledByDefault&&!n.enabledByDefault||e.find(".status").removeClass("disabled").addClass("enabled"),e.parent().removeClass("hidden").closest(".site-group").removeClass("hidden")})),h.$container.find(".revision-hr").removeClass("hidden"),i.newSiteIds=null),i.settings.isProvisionalDraft?l&&(i.$container.find("input.action-input").attr("value","elements/apply-draft"),i.settings.elementId=s.data.elementId,i.settings.draftId=s.data.draftId,i.settings.isLive=!1,i.previewToken=null,i.initForProvisionalDraft()):h&&(h.$options.filter(".sel").find(".draft-name").text(s.data.draftName),h.$options.filter(".sel").find(".draft-meta").text(s.data.creator?Craft.t("app","Saved {timestamp} by {creator}",{timestamp:s.data.timestamp,creator:s.data.creator}):Craft.t("app","Saved {timestamp}",{timestamp:s.data.timestamp}))),s.data.previewTargets&&JSON.stringify(s.data.previewTargets)!==JSON.stringify(i.settings.previewTargets)&&i.updatePreviewTargets(s.data.previewTargets),l&&(i.updatePreviewLinks(),i.trigger("createProvisionalDraft")),i.$nameTextInput&&i.checkMetaValues();var d=s.data.modifiedAttributes.map((function(t){return t=i.namespaceInputName(t),'[name="'.concat(t,'"],[name^="').concat(t,'["]')})).concat(a.map((function(t){return'[name="'.concat(t,'"]')}))),c=$(d.join(",")).parents().filter(".flex-fields > .field:not(:has(> .status-badge))");e.dirtyFields&&(c=c.add(i.$contentContainer.children("[data-layout-tab]").children(e.dirtyFields.map((function(t){return'[data-attribute="'.concat(t,'"]')})).join(","))));for(var u=0;u",{class:"status-badge modified",title:Craft.t("app","This field has been modified.")}).append($("",{class:"visually-hidden",html:Craft.t("app","This field has been modified.")})));for(var p=i.serializeForm(!0)===t,f=$(),g={},m=!1,v=0;v",{id:i.namespaceId(b.id),class:"flex-fields","data-id":b.id,"data-layout-tab":b.uid}),b.id!==o&&C.addClass("hidden"),C.appendTo(i.$contentContainer)),f=f.add(C);for(var _=0;_",{class:"hidden","data-layout-element":y.uid,"data-layout-element-placeholder":""});I.length?I.replaceWith(T):T.appendTo(C),m=!0}}}}var x,E=i.$contentContainer.children("[data-layout-tab]").not(f).not('[data-layout-tab=""]');if(E.length&&(E.remove(),m=!0),f.filter(":not(.hidden)").length||f.first().removeClass("hidden"),i.settings.visibleLayoutElements=g,i.isFullPage?(Craft.cp.updateTabs(s.data.tabs),x=Craft.cp.tabManager):(i.slideout.updateTabs(s.data.tabs),x=i.slideout.tabManager),o&&r&&o!==r){var L=x.$tabs.filter('[data-id="'.concat(r,'"]'));L.length?x.selectTab(L):x.selectTab(x.$tabs.first())}Craft.appendHeadHtml(s.data.headHtml),Craft.appendBodyHtml(s.data.bodyHtml),m&&(s.data.initialDeltaValues&&Object.assign(i.$container.data("initial-delta-values"),s.data.initialDeltaValues),p&&(i.lastSerializedValue=i.serializeForm(!0))),i.handleDismissibleTips(),i.settings.updatedTimestamp=s.data.updatedTimestamp,i.settings.canonicalUpdatedTimestamp=s.data.canonicalUpdatedTimestamp,i.afterUpdate(t),Craft.broadcaster&&Craft.broadcaster.postMessage({pageId:Craft.pageId,event:"saveDraft",canonicalId:i.settings.canonicalId,draftId:i.settings.draftId,isProvisionalDraft:i.settings.isProvisionalDraft}),n()})).catch((function(t){i._afterSaveDraft(),i.ignoreFailedRequest||(i.failed=!0,t&&t.response&&(i.httpStatus=t.response.status,i.httpError=t.response.data?t.response.data.message:null),i._showFailStatus(),s(t)),i.ignoreFailedRequest=!1}))}}))},_afterSaveDraft:function(){this.$saveMetaBtn&&this.$saveMetaBtn.removeClass("active")},_showFailStatus:function(){this.statusIcons().velocity("stop").css("opacity","").removeClass("hidden checkmark-icon").addClass("alert-icon"),this.setStatusMessage(this._saveFailMessage())},prepareData:function(t,e){t=Craft.findDeltaData(this.$container.data("initialSerializedValue"),t,this.$container.data("delta-names"),e,this.$container.data("initial-delta-values"),this.$container.data("modified-delta-names"));var i={};return this.settings.draftId&&(i[this.namespaceInputName("draftId")]=this.settings.draftId,this.settings.isProvisionalDraft&&(i[this.namespaceInputName("provisional")]=1)),null!==this.settings.draftName&&(i[this.namespaceInputName("draftName")]=this.settings.draftName),$.isEmptyObject(i)||(t+="&".concat($.param(i))),t},get _saveHeaders(){var t={"content-type":"application/x-www-form-urlencoded"};return this.namespace&&(t["X-Craft-Namespace"]=this.namespace),t},updatePreviewTargets:function(t){var e=this;t.forEach((function(t){var i=e.settings.previewTargets.find((function(e){return e.label===t.label}));i&&(i.url=t.url);var n=e.previewLinks.find((function(e){return e.data("targetLabel")===t.label}));n&&(n.data("targetUrl",t.url),e.updatePreviewLinkHref(n))}))},afterUpdate:function(t){this.$container.data("initialSerializedValue",t),this.$container.data("initial-delta-values",{});var e=this.statusIcons().velocity("stop").css("opacity","").removeClass("hidden").addClass("checkmark-icon");this.setStatusMessage(this._saveSuccessMessage()),Craft.autosaveDrafts||e.velocity("stop").velocity({opacity:0},{delay:2e3,complete:function(){e.addClass("hidden")}}),this.trigger("update")},setStatusMessage:function(t){this.statusIcons().attr("title",t),this.statusMessage().empty().append($("",{class:"visually-hidden",text:t}))},showMetaHud:function(){this.metaHud?this.metaHud.show():(this.createMetaHud(),this.onMetaHudShow()),Garnish.isMobileBrowser(!0)||this.$nameTextInput.trigger("focus")},createMetaHud:function(){var t=$(""),e=$(' ").appendTo(t),i=$('').appendTo(e);this.$nameTextInput=$('').appendTo(i).val(this.settings.draftName);var n=$('').appendTo(t);$('').appendTo(n),this.$saveMetaBtn=$("",{type:"submit",class:"btn submit disabled","aria-disabled":"true",text:Craft.t("app","Save")}).appendTo(n),this.metaHud=new Garnish.HUD(this.$editMetaBtn,t,{onSubmit:this.saveMeta.bind(this)}),this.addListener(this.$nameTextInput,"input","checkMetaValues"),this.metaHud.on("show",this.onMetaHudShow.bind(this)),this.metaHud.on("hide",this.onMetaHudHide.bind(this)),this.metaHud.on("escape",this.onMetaHudEscape.bind(this))},onMetaHudShow:function(){this.$editMetaBtn.addClass("active"),this.$editMetaBtn.attr("aria-expanded","true")},onMetaHudHide:function(){this.$editMetaBtn.removeClass("active"),this.$editMetaBtn.attr("aria-expanded","false"),Garnish.focusIsInside(this.metaHud.$body)&&this.$editMetaBtn.trigger("focus")},onMetaHudEscape:function(){this.$nameTextInput.val(this.settings.draftName)},checkMetaValues:function(){return this.$nameTextInput.val()&&this.$nameTextInput.val()!==this.settings.draftName?(this.$saveMetaBtn.removeClass("disabled"),this.$saveMetaBtn.removeAttr("aria-disabled"),!0):(this.$saveMetaBtn.addClass("disabled"),this.$saveMetaBtn.attr("aria-disabled","true"),!1)},shakeMetaHud:function(){Garnish.shake(this.metaHud.$hud)},saveMeta:function(){var t=this;return new Promise((function(e,i){if(!t.checkMetaValues())return t.shakeMetaHud(),void i();t.settings.draftName=t.$nameTextInput.val(),t.metaHud.hide(),t.checkForm(!0).then(e).catch(i)}))},handleSubmit:function(t){var e=this;if(t.preventDefault(),t.stopPropagation(),!this.submittingForm)if(!this.settings.draftId||this.settings.isUnpublishedDraft||this.settings.isProvisionalDraft||void 0!==t.autosave&&!t.autosave||!(t.saveShortcut||t.customTrigger&&"elements/save-draft"===t.customTrigger.data("action"))||!this.enableAutosave){this.submittingForm=!0,Craft.cp.$confirmUnloadForms=Craft.cp.$confirmUnloadForms.not(this.$container),this.cancelToken&&(this.ignoreFailedRequest=!0,this.cancelToken.cancel()),this.trigger("beforeSubmit");var i=this.prepareData(this.serializeForm(!1));if(this.isFullPage){this.stopListeningForChanges();var n=Craft.createForm(i);n.appendTo(Garnish.$bod),n.submit()}else this.slideout.showSubmitSpinner(),Craft.sendActionRequest("POST",null,{headers:this._saveHeaders,data:i}).then((function(t){e.slideout.handleSubmitResponse(t)})).catch((function(t){e.slideout.handleSubmitError(t)})).finally((function(){e.submittingForm=!1,e.slideout.hideSubmitSpinner()}))}else this.checkForm(!0)},handleDismissibleTips:function(){var t=this;this.addListener(this.tipDismissBtn,"click",(function(e){t.hideTip(e)}))},getHiddenTipsUids:function(){return Craft.getLocalStorage("dismissedTips",[])},setHiddenTipsUids:function(t){Craft.setLocalStorage("dismissedTips",t)},hideTip:function(t){var e=t.target;if(e){var i=$(e).closest(".readable");if(i.length){var n=i.data("layout-element");if(i.remove(),"undefined"!=typeof Storage){var s=this.getHiddenTipsUids();s.includes(n)||(s.push(n),this.setHiddenTipsUids(s))}}}},_checkActivity:function(){var t=this;this.queue.push((function(){return new Promise((function(e,i){Craft.sendActionRequest("POST","elements/recent-activity",{params:{dontExtendSession:1},data:{elementType:t.settings.elementType,elementId:t.settings.canonicalId,draftId:t.settings.draftId,siteId:t.settings.siteId,provisional:t.settings.isProvisionalDraft}}).then((function(i){var n=i.data,s=null;if(t.activityTooltips&&(s=Object.values(t.activityTooltips).find((function(t){return t.$trigger[0]===document.activeElement}))),t.$activityContainer.html("").attr("role","region").attr("aria-label",Craft.t("app","Recent Activity")),n.activity.length){$("",{class:"visually-hidden",text:Craft.t("app","Recent Activity")}).appendTo(t.$activityContainer);for(var a=$("").appendTo(t.$activityContainer),r=0;r").appendTo(a),h=$("",{type:"button",class:"activity-btn","aria-label":Craft.t("app","{name} active, more info",{name:o.userName}),"aria-expanded":"false"}).appendTo(l),d=$(o.userThumb).addClass("elementthumb").css("z-index",n.activity.length-r).appendTo(h);d.find("img,svg").attr("role","presentation"),Craft.cp.elementThumbLoader.load(l),d.find("title").remove(),void 0===t.activityTooltips[o.userId]?t.activityTooltips[o.userId]=new Craft.Tooltip(h,o.message):(t.activityTooltips[o.userId].$trigger=h,t.activityTooltips[o.userId].message=o.message,t.activityTooltips[o.userId]===s&&t.activityTooltips[o.userId].$trigger.focus())}}for(var c=function(){var e=p[u];n.activity.find((function(t){return t.userId==e}))||t.activityTooltips[e].hide()},u=0,p=Object.keys(t.activityTooltips);u",{class:"hidden",name:t.namespaceInputName(e),value:i.settings.saveParams[e]}).appendTo(i.$container)}))}))})),this.on("submit",(function(t){if(Craft.broadcaster&&Craft.broadcaster.postMessage({event:"saveElement",id:t.response.data.element.id}),i.settings.onSaveElement){var e=Object.assign({},t.response.data,t.response.data.element);delete e.element,delete e.modelName,delete e.message,i.settings.onSaveElement(e)}Craft.Preview.refresh()}))},getParams:function(){var t={};return this.settings.elementType&&(t.elementType=this.settings.elementType),this.settings.elementId?t.elementId=this.settings.elementId:this.$element&&this.$element.data("id")&&(t.elementId=this.$element.data("id")),this.settings.draftId?t.draftId=this.settings.draftId:this.$element&&this.$element.data("draft-id")?t.draftId=this.$element.data("draft-id"):this.settings.revisionId?t.revisionId=this.settings.revisionId:this.$element&&this.$element.data("revision-id")&&(t.revisionId=this.$element.data("revision-id")),this.settings.siteId?t.siteId=this.settings.siteId:this.$element&&this.$element.data("site-id")&&(t.siteId=this.$element.data("site-id")),this.settings.prevalidate&&(t.prevalidate=1),t},handleSubmit:function(t){this.$container.data("elementEditor").handleSubmit(t)}},{defaults:{elementId:null,draftId:null,revisionId:null,elementType:null,siteId:null,prevalidate:!1,saveParams:{},onSaveElement:null,validators:[]}})},7998:function(){Craft.ElementFieldSettings=Garnish.Base.extend({allowMultipleSources:null,$maintainHierarchyField:null,$maintainHierarchyInput:null,$sourcesField:null,$sourceSelect:null,$branchLimitField:null,$maxRelationsField:null,$minRelationsField:null,init:function(t,e,i,n,s,a){this.allowMultipleSources=t,this.$maintainHierarchyField=$("#".concat(e)),this.$maintainHierarchyInput=this.$maintainHierarchyField.find('input[type="checkbox"]'),this.$sourcesField=$("#".concat(i)),this.allowMultipleSources||(this.$sourceSelect=this.$sourcesField.find("select")),this.$branchLimitField=$("#".concat(n)),this.$minRelationsField=$("#".concat(s)),this.$maxRelationsField=$("#".concat(a)),this.updateLimitFields(),this.addListener(this.$maintainHierarchyInput,"change","updateLimitFields"),this.allowMultipleSources?this.$sourcesField.find("[type=checkbox]").each(function(t,e){this.addListener($(e),"change","updateMaintainHierarchyField")}.bind(this)):this.addListener(this.$sourceSelect,"change","updateMaintainHierarchyField"),this.updateMaintainHierarchyField()},updateLimitFields:function(){!this.$maintainHierarchyField.hasClass("hidden")&&this.$maintainHierarchyInput.is(":checked")?(this.$minRelationsField.addClass("hidden"),this.$maxRelationsField.addClass("hidden"),this.$branchLimitField.removeClass("hidden")):(this.$branchLimitField.addClass("hidden"),this.$minRelationsField.removeClass("hidden"),this.$maxRelationsField.removeClass("hidden"))},updateMaintainHierarchyField:function(){var t;if(this.allowMultipleSources){var e=this.$sourcesField.find('[type="checkbox"]:checked');t=1===e.length&&e.data("structure-id")}else t=this.$sourceSelect.children("option:selected").data("structure-id");t?this.$maintainHierarchyField.removeClass("hidden"):this.$maintainHierarchyField.addClass("hidden"),this.updateLimitFields()}})},3663:function(){Craft.ElementTableSorter=Garnish.DragSort.extend({tableView:null,_helperMargin:null,_$firstRowCells:null,_$titleHelperCell:null,_titleHelperCellOuterWidth:null,_ancestors:null,_updateAncestorsFrame:null,_draggeeLevel:null,_draggeeLevelDelta:null,draggingLastElements:null,_loadingDraggeeLevelDelta:!1,_targetLevel:null,_targetLevelBounds:null,_positionChanged:null,init:function(t,e,i){this.tableView=t,this._helperMargin=this.tableView.elementIndex.actions?52:0,i=$.extend({},Craft.ElementTableSorter.defaults,i,{handle:".move",collapseDraggees:!0,singleHelper:!0,helperSpacingY:2,magnetStrength:4,helper:this.getHelper.bind(this),helperLagBase:1.5,axis:Garnish.Y_AXIS}),this.base(e,i)},findDraggee:function(){var t=this;this._draggeeLevel=this._targetLevel=this._level(this.$targetItem),this._draggeeLevelDelta=0;for(var e=$(this.$targetItem),i=this.$targetItem.next();i.length;){var n=this._level(i);if(n<=this._draggeeLevel)break;var s=n-this._draggeeLevel;s>this._draggeeLevelDelta&&(this._draggeeLevelDelta=s),e=e.add(i),i=i.next()}if(this.draggingLastElements=!i.length,this.settings.maxLevels&&this.draggingLastElements&&this.tableView.getMorePending()){this._loadingDraggeeLevelDelta=!0;var a=this._getAjaxBaseData(this.$targetItem);Craft.sendActionRequest("POST","structures/get-element-level-delta",{data:a}).then((function(e){t._loadingDraggeeLevelDelta=!1,t.dragging&&(t._draggeeLevelDelta=e.data.delta,t.drag(!1))}))}return e},getHelper:function(t){var e=$('').appendTo(Garnish.$bod),i=$('').appendTo(e),n=$('').appendTo(i),s=$("").appendTo(n);t.appendTo(s),this._$firstRowCells=this.tableView.$elementContainer.children("tr:first").children();for(var a=t.children(),r=0;r [data-titlecell]:first > div").css("padding-".concat(Craft.left),a),r.text(o)}this._positionChanged=!0}if(this._positionChanged&&this.settings.structureId){for(var l,h=this._getAjaxBaseData(this.$draggee),d=this.$draggee.first().prev();d.length;){var c=this._level(d);if(c==this._targetLevel){h.prevId=d.data("id");break}if(c th .toggle");u.hasClass("expanded")||(u.addClass("expanded"),l=this.tableView._createSpinnerRowAfter(d),this.tableView.elementSelect&&this.tableView.elementSelect.removeItems(this.$targetItem),this.removeItems(this.$targetItem),this.$targetItem.remove(),this.tableView._totalVisible--);break}d=d.prev()}Craft.sendActionRequest("POST","structures/move-element",{data:h}).then((function(e){Craft.cp.displaySuccess(Craft.t("app","New position saved.")),t.onPositionChange(),l&&l.parent().length&&(l.remove(),t.tableView._expandElement($toggle,!0)),Craft.cp.runQueue()})).catch((function(e){e.response,Craft.cp.displayError(Craft.t("app","A server error occurred.")),t.tableView.elementIndex.updateElements()}))}},onSortChange:function(){this.tableView.elementSelect&&this.tableView.elementSelect.resetItemOrder(),this._positionChanged=!0,this.base()},onPositionChange:function(){var t=this;Garnish.requestAnimationFrame((function(){t.trigger("positionChange"),t.settings.onPositionChange()}))},onReturnHelpersToDraggees:function(){if(this._$firstRowCells.css("width",""),this.draggingLastElements&&this.tableView.getMorePending()){this.tableView._totalVisible+=this.newDraggeeIndexes[0]-this.oldDraggeeIndexes[0];var t=this.$draggee.last().nextAll();t.length&&(this.removeItems(t),t.remove(),this.tableView.maybeLoadMore())}this.base()},_getLevelBounds:function(t,e){if(e&&e.length?this._getLevelBounds._minLevel=this._level(e):this._getLevelBounds._minLevel=1,t&&t.length?this._getLevelBounds._maxLevel=this._level(t)+1:this._getLevelBounds._maxLevel=1,this.settings.maxLevels){if(1!=this._getLevelBounds._minLevel&&this._getLevelBounds._minLevel+this._draggeeLevelDelta>this.settings.maxLevels)return!1;this._getLevelBounds._maxLevel+this._draggeeLevelDelta>this.settings.maxLevels&&(this._getLevelBounds._maxLevel=this.settings.maxLevels-this._draggeeLevelDelta,this._getLevelBounds._maxLevelthis._targetLevelBounds.max&&(this._updateIndent._indentationDist-=this._updateIndent._targetLevel-this._targetLevelBounds.max,this._updateIndent._targetLevel=this._targetLevelBounds.max),this._targetLevel!==(this._targetLevel=this._updateIndent._targetLevel)&&this._updateAncestorsBeforeRepaint(),this._updateIndent._targetLevelMouseDiff=this._updateIndent._mouseDist-this._updateIndent._indentationDist*Craft.ElementTableSorter.LEVEL_INDENT,this._updateIndent._magnetImpact=Math.round(this._updateIndent._targetLevelMouseDiff/15),Math.abs(this._updateIndent._magnetImpact)>Craft.ElementTableSorter.MAX_GIVE&&(this._updateIndent._magnetImpact=(this._updateIndent._magnetImpact>0?1:-1)*Craft.ElementTableSorter.MAX_GIVE),this._updateIndent._closestLevelMagnetIndent=this._getLevelIndent(this._targetLevel)+this._updateIndent._magnetImpact,this.helpers[0].css("margin-".concat(Craft.left),this._updateIndent._closestLevelMagnetIndent+this._helperMargin),this._$titleHelperCell.css("width",this._titleHelperCellOuterWidth-this._updateIndent._closestLevelMagnetIndent)},_getLevelIndent:function(t){return(t-1)*Craft.ElementTableSorter.LEVEL_INDENT},_getAjaxBaseData:function(t){return{structureId:this.settings.structureId,elementId:t.data("id"),siteId:t.find(".element:first").data("site-id")}},_getAncestors:function(t,e){if(this._getAncestors._ancestors=[],0!=e)for(this._getAncestors._level=e,this._getAncestors._$prevRow=t.prev();this._getAncestors._$prevRow.length&&!(this._level(this._getAncestors._$prevRow) th .toggle:first").remove();for(this._updateAncestors._newAncestors=this._getAncestors(this.$targetItem,this._targetLevel),this._updateAncestors._i=0;this._updateAncestors._i').insertAfter(this._updateAncestors._$ancestor.find("> th .move:first"))}this._ancestors=this._updateAncestors._newAncestors,delete this._updateAncestors._i,delete this._updateAncestors._$ancestor,delete this._updateAncestors._newAncestors}},{HELPER_MARGIN:0,LEVEL_INDENT:44,MAX_GIVE:22,defaults:{structureId:null,maxLevels:1,onPositionChange:$.noop}})},8895:function(){function t(t,e){(null==e||e>t.length)&&(e=t.length);for(var i=0,n=new Array(e);ii&&s",{sizes:e.attr("data-sizes"),srcset:e.attr("data-srcset"),alt:e.attr("data-alt")||""});this.addListener(i,"load,abort,error","loadNext"),i.appendTo(e),picturefill({elements:[i[0]]})}}}else this.deactivate()},loadNextIfRemoved:function(){return!(!this.container||document.body.contains(this.container)||(this.loadNext(),0))}})},4233:function(){Craft.ElevatedSessionForm=Garnish.Base.extend({$form:null,inputs:null,init:function(t,e){if(this.$form=$(t),void 0!==e){this.inputs=[],e=$.makeArray(e);for(var i=0;i=Craft.ElevatedSessionManager.minSafeElevatedSessionTimeout?e.callback():e.showPasswordModal()})).catch((function(){e.fetchingTimeout=!1}))},showPasswordModal:function(){var t=this;if(this.passwordModal)this.passwordModal.show();else{var e=$(''),i=$(''+Craft.t("app","Enter your password to continue.")+"
").appendTo(e),n=$('').appendTo(i),s=$('
').appendTo(n),a=$('
').appendTo(s),r=$("
| ").appendTo(s),o=$('
').appendTo(a);this.$passwordInput=$('
').appendTo(o),this.$submitBtn=Craft.ui.createSubmitButton({class:"disabled",label:Craft.t("app","Submit"),spinner:!0}).appendTo(r),this.$errorPara=$('
').appendTo(i),this.passwordModal=new Garnish.Modal(e,{closeOtherModals:!1,onFadeIn:function(){setTimeout(t.focusPasswordInput.bind(t),100)},onFadeOut:function(){t.$passwordInput.val("")}}),new Craft.PasswordInput(this.$passwordInput,{onToggleInput:function(e){t.$passwordInput=e}}),this.addListener(this.$passwordInput,"input","validatePassword"),this.addListener(e,"submit","submitPassword")}},focusPasswordInput:function(){Garnish.isMobileBrowser(!0)||this.$passwordInput.trigger("focus")},validatePassword:function(){return this.$passwordInput.val().length>=6?(this.$submitBtn.removeClass("disabled"),!0):(this.$submitBtn.addClass("disabled"),!1)},submitPassword:function(t){var e=this;if(t&&t.preventDefault(),this.validatePassword()){this.$submitBtn.addClass("loading"),this.clearLoginError();var i={currentPassword:this.$passwordInput.val()};Craft.sendActionRequest("POST","users/start-elevated-session",{data:i}).then((function(t){e.$submitBtn.removeClass("loading"),e.passwordModal.hide(),e.callback()})).catch((function(t){var i=t.response;e.$submitBtn.removeClass("loading"),e.showPasswordError(i.data.message||Craft.t("app","Incorrect password.")),Garnish.shake(e.passwordModal.$container),e.focusPasswordInput()}))}},showPasswordError:function(t){null==t&&(t=Craft.t("app","A server error occurred.")),this.$errorPara.text(t),this.passwordModal.updateSizeAndPosition()},clearLoginError:function(){this.showPasswordError("")}},{minSafeElevatedSessionTimeout:5}),Craft.elevatedSessionManager=new Craft.ElevatedSessionManager},6262:function(){function t(e){return t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},t(e)}function e(t,e){(null==e||e>t.length)&&(e=t.length);for(var i=0,n=new Array(e);i
=0;--n){var a=this.tryEntries[n],r=a.completion;if("root"===a.tryLoc)return i("end");if(a.tryLoc<=this.prev){var o=s.call(a,"catchLoc"),l=s.call(a,"finallyLoc");if(o&&l){if(this.prev=0;--i){var n=this.tryEntries[i];if(n.tryLoc<=this.prev&&s.call(n,"finallyLoc")&&this.prev=0;--e){var i=this.tryEntries[e];if(i.finallyLoc===t)return this.complete(i.completion,i.afterLoc),T(i),p}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var i=this.tryEntries[e];if(i.tryLoc===t){var n=i.completion;if("throw"===n.type){var s=n.arg;T(i)}return s}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,i){return this.delegate={iterator:E(t),resultName:e,nextLoc:i},"next"===this.method&&(this.arg=void 0),p}},e}function n(t,e,i,n,s,a,r){try{var o=t[a](r),l=o.value}catch(t){return void i(t)}o.done?e(l):Promise.resolve(l).then(n,s)}function s(t){return function(){var e=this,i=arguments;return new Promise((function(s,a){var r=t.apply(e,i);function o(t){n(r,s,a,o,l,"next",t)}function l(t){n(r,s,a,o,l,"throw",t)}o(void 0)}))}}var a;Craft.EmbeddedElementIndex=Garnish.Base.extend({$container:null,elementType:null,elementIndex:null,$createBtn:null,init:function(t,n,a){var r,o,l,h,d=this;if(this.$container=$(t),this.elementType=n,this.setSettings(a,Craft.EmbeddedElementIndex.defaults),this.$container.data("nestedElementManager")&&(console.warn("Double-instantiating a nested element manager on an element"),this.$container.data("nestedElementManager").destroy()),this.$container.data("nestedElementManager",this),this.elementIndex=Craft.createElementIndex(this.elementType,this.$container,Object.assign({context:"embedded-index"},this.settings.indexSettings,{canDuplicateElements:function(t){return d.canCreate(t.length)},canDeleteElements:function(t){return d.canDelete(t.length)},onBeforeDuplicateElements:(h=s(i().mark((function t(){return i().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!d.elementEditor){t.next=3;break}return t.next=3,d.elementEditor.ensureIsDraftOrRevision();case 3:case"end":return t.stop()}}),t)}))),function(){return h.apply(this,arguments)}),onDuplicateElements:(l=s(i().mark((function t(){return i().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!d.elementEditor||!d.settings.fieldHandle){t.next=3;break}return t.next=3,d.elementEditor.markFieldAsDirty(d.settings.fieldHandle);case 3:case"end":return t.stop()}}),t)}))),function(){return l.apply(this,arguments)}),onBeforeDeleteElements:(o=s(i().mark((function t(){return i().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!d.elementEditor){t.next=3;break}return t.next=3,d.elementEditor.ensureIsDraftOrRevision();case 3:case"end":return t.stop()}}),t)}))),function(){return o.apply(this,arguments)}),onDeleteElements:(r=s(i().mark((function t(){return i().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!d.elementEditor||!d.settings.fieldHandle){t.next=3;break}return t.next=3,d.elementEditor.markFieldAsDirty(d.settings.fieldHandle);case 3:case"end":return t.stop()}}),t)}))),function(){return r.apply(this,arguments)}),onBeforeUpdateElements:this.onBeforeUpdateElements.bind(this),onCountResults:this.onCountResults.bind(this)})),this.settings.canCreate)if(this.$createBtn=Craft.ui.createButton({label:this.settings.createButtonLabel,spinner:!0}).addClass("add icon disabled").appendTo(this.elementIndex.$toolbar),Array.isArray(this.settings.createAttributes)){var c,u="menu-".concat(Math.floor(1e6*Math.random())),p=$("",{id:u,class:"menu menu--disclosure"}).insertAfter(this.$createBtn),f=$("").appendTo(p),g=function(t,i){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,i){if(t){if("string"==typeof t)return e(t,i);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?e(t,i):void 0}}(t))||i&&t&&"number"==typeof t.length){n&&(t=n);var s=0,a=function(){};return{s:a,n:function(){return s>=t.length?{done:!0}:{done:!1,value:t[s++]}},e:function(t){throw t},f:a}}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 r,o=!0,l=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return o=t.done,t},e:function(t){l=!0,r=t},f:function(){try{o||null==n.return||n.return()}finally{if(l)throw r}}}}(this.settings.createAttributes);try{var m=function(){var t=c.value,e=$("").appendTo(f),i=$("",{href:"#",type:"button",role:"button",text:t.label}).appendTo(e);d.addListener(i,"activate",(function(e){e.preventDefault(),d.createElement(t.attributes)}))};for(g.s();!(c=g.n()).done;)m()}catch(t){g.e(t)}finally{g.f()}this.$createBtn.attr("aria-controls",u).attr("data-disclosure-trigger","true").addClass("menubtn").disclosureMenu()}else this.addListener(this.$createBtn,"activate",(function(t){t.preventDefault(),d.createElement(d.settings.createAttributes)}));setTimeout((function(){d.elementEditor=d.$container.closest("form").data("elementEditor"),d.elementEditor&&d.elementEditor.on("createProvisionalDraft",(function(){d.elementIndex.settings.criteria[d.settings.ownerIdParam]=d.elementEditor.settings.elementId,d.settings.baseCreateAttributes&&d.settings.baseCreateAttributes.ownerId&&(d.settings.baseCreateAttributes.ownerId=d.elementEditor.settings.elementId)}))}),100)},onBeforeUpdateElements:function(){this.$createBtn&&this.$createBtn.addClass("disabled")},onCountResults:function(){this.$createBtn&&this.canCreate()&&this.$createBtn.removeClass("disabled")},canCreate:function(t){return!this.settings.maxElements||!this.elementIndex.isIndexBusy&&this.elementIndex.totalUnfilteredResults+(t||1)<=this.settings.maxElements},canDelete:function(t){return!this.settings.minElements||!this.elementIndex.isIndexBusy&&this.elementIndex.totalUnfilteredResults-(t||1)>=this.settings.minElements},createElement:(a=s(i().mark((function t(e){var n=this;return i().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(this.$createBtn.addClass("loading"),!this.elementEditor){t.next=4;break}return t.next=4,this.elementEditor.ensureIsDraftOrRevision();case 4:e=Object.assign({elementType:this.elementType},this.settings.baseCreateAttributes,e),Craft.sendActionRequest("POST","elements/create",{data:e}).then((function(t){var e=t.data;Craft.createElementEditor(n.elementType,{siteId:e.element.siteId,elementId:e.element.id,draftId:e.element.draftId,params:{fresh:1}}).on("submit",s(i().mark((function t(){return i().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n.elementIndex.clearSearch(),n.elementIndex.updateElements(),!n.elementEditor||!n.settings.fieldHandle){t.next=5;break}return t.next=5,n.elementEditor.markFieldAsDirty(n.settings.fieldHandle);case 5:case"end":return t.stop()}}),t)}))))})).catch((function(t){var e=t.response;Craft.cp.displayError(e.data&&e.data.error||null)})).finally((function(){n.$createBtn.removeClass("loading")}));case 6:case"end":return t.stop()}}),t,this)}))),function(t){return a.apply(this,arguments)}),destroy:function(){this.$container.removeData("nestedElementManager"),this.base()}},{ownerId:null,defaults:{indexSettings:{},canCreate:!1,minElements:null,maxElements:null,createButtonLabel:Craft.t("app","Create"),baseCreateAttributes:null,ownerIdParam:null,createAttributes:null,fieldHandle:null}})},1402:function(){function t(t,e){(null==e||e>t.length)&&(e=t.length);for(var i=0,n=new Array(e);i');var r="new-entry-menu-"+Craft.randomString(10);if(a){var o="index"===n.settings.context?Craft.t("app","New entry"):Craft.t("app","New {section} entry",{section:a.name}),l="index"===n.settings.context?Craft.t("app","New entry in the {section} section",{section:a.name}):o,h="index"===n.settings.context?"link":null;n.$newEntryBtn=Craft.ui.createButton({label:o,ariaLabel:l,spinner:!0,role:h}).addClass("submit add icon").appendTo(n.$newEntryBtnGroup),n.addListener(n.$newEntryBtn,"click mousedown",(function(t){if("index"===n.settings.context&&("click"===t.type&&Garnish.isCtrlKeyPressed(t)||"mousedown"===t.type&&1===t.originalEvent.button)){var e={};i&&(e.type=i),window.open(Craft.getUrl("entries/".concat(a.handle,"/new"),e))}else"click"===t.type&&n._createEntry(a.id,i)})),n.publishableSections.length>1&&(s=$("",{type:"button",class:"btn submit menubtn btngroup-btn-last","aria-controls":r,"data-disclosure-trigger":"","aria-label":Craft.t("app","New entry, choose a section")}).appendTo(n.$newEntryBtnGroup))}else n.$newEntryBtn=s=Craft.ui.createButton({label:Craft.t("app","New entry"),ariaLabel:Craft.t("app","New entry, choose a section"),spinner:!0}).addClass("submit add icon menubtn btngroup-btn-last").attr("aria-controls",r).attr("data-disclosure-trigger","").appendTo(n.$newEntryBtnGroup);if(n.addButton(n.$newEntryBtnGroup),s){var d,c=$("",{id:r,class:"menu menu--disclosure"}).appendTo(n.$newEntryBtnGroup),u=$("").appendTo(c),p=function(e,i){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,i){if(e){if("string"==typeof e)return t(e,i);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?t(e,i):void 0}}(e))||i&&e&&"number"==typeof e.length){n&&(e=n);var s=0,a=function(){};return{s:a,n:function(){return s>=e.length?{done:!0}:{done:!1,value:e[s++]}},e:function(t){throw t},f:a}}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 r,o=!0,l=!1;return{s:function(){n=n.call(e)},n:function(){var t=n.next();return o=t.done,t},e:function(t){l=!0,r=t},f:function(){try{o||null==n.return||n.return()}finally{if(l)throw r}}}}(n.publishableSections);try{var f=function(){var t=d.value,e="index"===n.settings.context?"link":"button";if("index"===n.settings.context&&-1!==$.inArray(n.siteId,t.sites)||"index"!==n.settings.context&&t!==a){var i=$("").appendTo(u),r=$("",{role:"button"===e?"button":null,href:Craft.getUrl("entries/".concat(t.handle,"/new")),type:"button"===e?"button":null,text:Craft.t("app","New {section} entry",{section:t.name})}).appendTo(i);n.addListener(r,"activate",(function(){s.data("trigger").hide(),n._createEntry(t.id)})),"button"===e&&n.addListener(r,"keydown",(function(e){e.keyCode===Garnish.SPACE_KEY&&(e.preventDefault(),s.data("trigger").hide(),n._createEntry(t.id))}))}};for(p.s();!(d=p.n()).done;)f()}catch(t){p.e(t)}finally{p.f()}new Garnish.DisclosureMenu(s)}}(),"index"===this.settings.context)){var s="entries";e&&(s+="/"+e),Craft.setPath(s)}},_createEntry:function(t,e){var i=this;if(this.$newEntryBtn.hasClass("loading"))console.warn("New entry creation already in progress.");else{var n=this.publishableSections.find((function(e){return e.id===t}));if(!n)throw"Invalid section ID: ".concat(t);this.$newEntryBtn.addClass("loading"),Craft.sendActionRequest("POST","entries/create",{data:{siteId:this.siteId,section:n.handle,type:e}}).then((function(t){var e=t.data;"index"===i.settings.context?document.location.href=Craft.getUrl(e.cpEditUrl,{fresh:1}):Craft.createElementEditor(i.elementType,{siteId:i.siteId,elementId:e.entry.id,draftId:e.entry.draftId,params:{fresh:1}}).on("submit",(function(){i.clearSearch(),i.setSelectedSortAttribute("dateCreated","desc"),i.selectElementAfterUpdate(e.entry.id),i.updateElements()}))})).finally((function(){i.$newEntryBtn.removeClass("loading")}))}}}),Craft.registerElementIndexClass("craft\\elements\\Entry",Craft.EntryIndex)},8201:function(){Craft.FieldLayoutDesigner=Garnish.Base.extend({$container:null,$configInput:null,$tabContainer:null,$newTabBtn:null,$sidebar:null,$libraryToggle:null,$selectedLibrary:null,$fieldLibrary:null,$uiLibrary:null,$uiLibraryElements:null,$fieldSearch:null,$clearFieldSearchBtn:null,$fieldGroups:null,$fields:null,tabGrid:null,elementDrag:null,_config:null,_$selectedFields:null,init:function(t,e){var i=this;this.$container=$(t),this.setSettings(e,Craft.FieldLayoutDesigner.defaults),this.$configInput=this.$container.children("input[data-config-input]"),this._config=JSON.parse(this.$configInput.val()),this._config.tabs||(this._config.tabs=[]),this._fieldHandles={};var n=this.$container.children(".fld-workspace");this.$tabContainer=n.children(".fld-tabs"),this.$newTabBtn=n.children(".fld-new-tab-btn"),this.$sidebar=this.$container.children(".fld-sidebar"),this.$fieldLibrary=this.$selectedLibrary=this.$sidebar.children(".fld-field-library");var s=this.$fieldLibrary.children(".search");this.$fieldSearch=s.children("input"),this.$clearFieldSearchBtn=s.children(".clear"),this.$fieldGroups=this.$sidebar.find(".fld-field-group"),this.$fields=this.$fieldGroups.children(".fld-element"),this.$uiLibrary=this.$sidebar.children(".fld-ui-library"),this.$uiLibraryElements=this.$uiLibrary.children(),this.tabGrid=new Craft.Grid(this.$tabContainer,{itemSelector:".fld-tab",minColWidth:264,fillMode:"grid",snapToGrid:24});for(var a=this.$tabContainer.children(),r=0;r\n \n \n \n')).appendTo(this.$tabContainer);this.tabGrid.addItems(i),this.tabDrag.addItems(i),this.initTab(i).updatePositionInConfig()}}},get config(){return this._config},set config(t){this._config=t,this.$configInput.val(JSON.stringify(t))},updateConfig:function(t){var e=t(this.config);!1!==e&&(this.config=e)},refreshSelectedFields:function(){this._$selectedFields=this.$tabContainer.find(".fld-field")},hasHandle:function(t){for(var e=0;e",{class:"fld-element-settings-body"});$("",{class:"fields",html:contents}).appendTo($body);var $footer=$("",{class:"fld-element-settings-footer"});$("",{class:"flex-grow"}).appendTo($footer);var $cancelBtn=Craft.ui.createButton({label:Craft.t("app","Close"),spinner:!0}).appendTo($footer);Craft.ui.createSubmitButton({class:"secondary",label:Craft.t("app","Apply"),spinner:!0}).appendTo($footer);var $contents=$body.add($footer),slideout=new Craft.Slideout($contents,{containerElement:"form",containerAttributes:{action:"",method:"post",novalidate:"",class:"fld-element-settings"}});return slideout.on("open",(function(){Garnish.requestAnimationFrame((function(){slideout.$container.find(".text:first").trigger("focus")}))})),$cancelBtn.on("click",(function(){slideout.close()})),js&&eval(js),Craft.initUiElements(slideout.$container),slideout}}),Craft.FieldLayoutDesigner.Tab=Garnish.Base.extend({designer:null,uid:null,$container:null,slideout:null,destroyed:!1,init:function(t,e){this.designer=t,this.$container=e,this.$container.data("fld-tab",this),this.uid=this.$container.data("uid"),this.uid||(this.uid=Craft.uuid(),this.config={uid:this.uid,name:this.$container.find(".tabs .tab span").text(),elements:[]},this.$container.data("settings-namespace",this.designer.$container.data("new-tab-settings-namespace").replace(/\bTAB_UID\b/g,this.uid)),this.$container.data("settings-html",this.designer.$container.data("new-tab-settings-html").replace(/\bTAB_UID\b/g,this.uid).replace(/\bTAB_NAME\b/g,this.config.name)),this.$container.data("settings-js",this.designer.$container.data("new-tab-settings-js").replace(/\bTAB_UID\b/g,this.uid))),this.designer.settings.customizableTabs&&(this.settingsNamespace=this.$container.data("settings-namespace"),this.createMenu());for(var i=this.$container.children(".fld-tabcontent").children(),n=0;n').insertAfter(e).append($("").append($("").append($("",{"data-action":"settings",text:Craft.t("app","Settings")}))).append($("").append($("",{"data-action":"remove",text:Craft.t("app","Remove")})))).append($("
")).append($("").append($("").append($("",{"data-action":"moveLeft",text:Craft.t("app","Move to the left")}))).append($("").append($("",{"data-action":"moveRight",text:Craft.t("app","Move to the right")}))));var i=new Garnish.MenuBtn(e,{onOptionSelect:this.onTabOptionSelect.bind(this)});i.menu.on("show",(function(){t.$container.prev(".fld-tab").length?i.menu.$container.find("[data-action=moveLeft]").removeClass("disabled"):i.menu.$container.find("[data-action=moveLeft]").addClass("disabled"),t.$container.next(".fld-tab").length?i.menu.$container.find("[data-action=moveRight]").removeClass("disabled"):i.menu.$container.find("[data-action=moveRight]").addClass("disabled")}))},onTabOptionSelect:function(t){if(this.designer.settings.customizableTabs)switch($(t).data("action")){case"settings":this.slideout?this.slideout.open():this.createSettings();break;case"remove":this.destroy();break;case"moveLeft":var e=this.$container.prev(".fld-tab");e.length&&(this.$container.insertBefore(e),this.updatePositionInConfig());break;case"moveRight":var i=this.$container.next(".fld-tab");i.length&&(this.$container.insertAfter(i),this.updatePositionInConfig())}},createSettings:function(){var t=this,e=this.$container.data("settings-html"),i=this.$container.data("settings-js");this.slideout=Craft.FieldLayoutDesigner.createSlideout(e,i),this.slideout.$container.on("submit",(function(e){e.preventDefault(),t.applySettings()}))},applySettings:function(){var t=this;if(this.slideout.$container.find('[name$="[name]"]').val()){var e=this.slideout.$container.find("button[type=submit]").addClass("loading"),i=$.extend({},this.config);delete i.elements,Craft.sendActionRequest("POST","fields/apply-layout-tab-settings",{data:{config:i,settingsNamespace:this.settingsNamespace,settings:this.slideout.$container.serialize()}}).then((function(e){t.updateConfig((function(t){return $.extend(e.data.config,{elements:t.elements})}));var i=t.$container.find(".tabs .tab span"),n=i.children(".fld-indicator");e.data.hasConditions?n.length||i.append($("",{class:"fld-indicator",title:Craft.t("app","This tab is conditional"),"aria-label":Craft.t("app","This tab is conditional"),"data-icon":"condition",role:"img"})):n.length&&n.remove(),t.slideout.close()})).catch((function(t){Craft.cp.displayError(),console.error(t)})).finally((function(){e.removeClass("loading"),t.slideout.close()}))}else Craft.cp.displayError(Craft.t("app","You must specify a tab name."))},initElement:function(t){return new Craft.FieldLayoutDesigner.Element(this,t)},get index(){var t=this;return this.designer.config.tabs.findIndex((function(e){return e.uid===t.uid}))},get config(){var t=this;if(!this.uid)throw"Tab is missing its UID";var e=this.designer.config.tabs.find((function(e){return e.uid===t.uid}));return e||(e={uid:this.uid,elements:[]},this.config=e),e},set config(t){if(!this.destroyed){t.name&&t.name!==this.config.name&&this.$container.find(".tabs .tab span").text(t.name);var e=this.designer.config,i=this.index;if(-1!==i)e.tabs[i]=t;else{var n=$.inArray(this.$container[0],this.$container.parent().children(".fld-tab"));e.tabs.splice(n,0,t)}this.designer.config=e}},updateConfig:function(t){if(!this.destroyed){var e=t(this.config);!1!==e&&(this.config=e)}},updatePositionInConfig:function(){var t=this;this.destroyed||this.designer.updateConfig((function(e){var i=t.config,n=t.index,s=$.inArray(t.$container[0],t.$container.parent().children(".fld-tab"));return-1!==n&&e.tabs.splice(n,1),e.tabs.splice(s,0,i),e}))},destroy:function(){var t=this;if(!this.destroyed){this.destroyed=!0,this.designer.updateConfig((function(e){var i=t.index;return-1!==i&&(e.tabs.splice(i,1),e)}));for(var e=this.$container.find(".fld-element"),i=0;i",{class:"hidden"}),this.$editBtn=$("",{role:"button",tabindex:0,class:"settings icon",title:Craft.t("app","Edit")});var r=function(){i.slideout?i.slideout.open():i.createSettings(a)};this.$editBtn.on("click",r),this.$container.on("dblclick",r)}this.initUi(),this.$container.attr("data-keywords",null),this.$container.attr("data-settings-html",null)},initUi:function(){var t=this;this.hasCustomWidth&&new Craft.SlidePicker(this.config.width||100,{min:25,max:100,step:25,valueLabel:function(t){return Craft.t("app","{pct} width",{pct:"".concat(t,"%")})},onChange:function(e){t.updateConfig((function(t){return t.width=e,t}))}}).$container.appendTo(this.$container),this.hasSettings&&this.$editBtn.appendTo(this.$container)},createSettings:function(t){var e=this,i=(this.$container.data("settings-js")||"").replace(/\bELEMENT_UID\b/g,this.uid);this.slideout=Craft.FieldLayoutDesigner.createSlideout(t,i),this.slideout.$container.on("submit",(function(t){t.preventDefault(),e.applySettings()}));var n=this.slideout.$container.find(".fields:first"),s=$();this.requirable&&(s=s.add(Craft.ui.createLightswitchField({label:Craft.t("app","Required"),name:"".concat(this.settingsNamespace,"[required]"),on:this.config.required}))),this.thumbable&&(s=s.add(Craft.ui.createLightswitchField({label:Craft.t("app","Use this field’s values for element thumbnails"),name:"".concat(this.settingsNamespace,"[providesThumbs]"),on:this.config.providesThumbs}))),this.previewable&&(s=s.add(Craft.ui.createLightswitchField({label:Craft.t("app","Include this field in element cards"),name:"".concat(this.settingsNamespace,"[includeInCards]"),on:this.config.includeInCards}))),s.length&&(n.is(":parent")&&n.append("
"),s.appendTo(n)),this.isField&&n.find('input[name$="[handle]"]').val(this.config.handle||""),this.trigger("createSettings")},applySettings:function(){var t=this,e=this.slideout.$container.find("button[type=submit]").addClass("loading");Craft.sendActionRequest("POST","fields/apply-layout-element-settings",{data:{config:this.config,settingsNamespace:this.settingsNamespace,settings:this.slideout.$container.serialize()}}).then((function(e){if(t.config=e.data.config,t.$editBtn.detach(),t.$container.html($(e.data.selectorHtml).html()),t.initUi(),t.config.providesThumbs)for(var i=t.tab.designer.$tabContainer.find(".fld-field"),n=0;n0&&(this.$items=$().add(this.$items.add(this.$insertion)),this.showingInsertion=!0,this.designer.tabGrid.refreshCols(!0),this.setMidpoints()))},onDragStop:function(){var t=this;this.showingInsertion&&this.swapInsertionWithDraggee(),this.removeCaboose(),this.designer.tabGrid.refreshCols(!0);var e=this.$draggee.offset();!e||0===e.top&&0===e.left?(this.$draggee.css({display:this.draggeeDisplay,visibility:"visible",opacity:0}).velocity({opacity:1},Garnish.FX_DURATION),this.helpers[0].velocity({opacity:0},Garnish.FX_DURATION,(function(){t._showDraggee()}))):this.returnHelpersToDraggees(),this.base(),Garnish.$bod.removeClass("dragging")}}),Craft.FieldLayoutDesigner.TabDrag=Craft.FieldLayoutDesigner.BaseDrag.extend({init:function(t){this.base(t,{handle:".tab"})},findItems:function(){return this.designer.$tabContainer.find("> div.fld-tab")},onDragStart:function(){this.base(),this.swapDraggeeWithInsertion(),this.setMidpoints()},swapDraggeeWithInsertion:function(){this.base(),this.designer.tabGrid.removeItems(this.$draggee),this.designer.tabGrid.addItems(this.$insertion)},swapInsertionWithDraggee:function(){this.base(),this.designer.tabGrid.removeItems(this.$insertion),this.designer.tabGrid.addItems(this.$draggee)},onDrag:function(){this.checkForNewClosestItem(),this.base()},onDragStop:function(){this.base(),this.$draggee.css({display:this.draggeeDisplay,visibility:"hidden"}),this.$draggee.data("fld-tab").updatePositionInConfig()},createCaboose:function(){var t=$('').appendTo(this.designer.$tabContainer);return this.designer.tabGrid.addItems(t),t},removeCaboose:function(){this.base(),this.designer.tabGrid.removeItems(this.$caboose)},createInsertion:function(){var t=this.$draggee.find(".tab");return $('\n\n'))}}),Craft.FieldLayoutDesigner.ElementDrag=Craft.FieldLayoutDesigner.BaseDrag.extend({draggingLibraryElement:!1,draggingField:!1,draggingMultiInstanceElement:!1,originalTab:null,onDragStart:function(){this.base(),this.draggingLibraryElement=this.$draggee.hasClass("unused"),this.draggingField=this.$draggee.hasClass("fld-field"),this.draggingMultiInstanceElement=Garnish.hasAttr(this.$draggee,"data-is-multi-instance"),this.draggingLibraryElement&&this.draggingMultiInstanceElement&&this.$draggee.css({display:this.draggeeDisplay,visibility:"visible"}),this.draggingLibraryElement?this.originalTab=null:(this.originalTab=this.$draggee.closest(".fld-tab").data("fld-tab"),this.swapDraggeeWithInsertion()),this.setMidpoints()},onDrag:function(){this.isDraggeeMandatory()||this.isHoveringOverTab()?this.checkForNewClosestItem():this.showingInsertion&&(this.$insertion.remove(),this.$items=$().add(this.$items.not(this.$insertion)),this.showingInsertion=!1,this.designer.tabGrid.refreshCols(!0),this.setMidpoints()),this.base()},isDraggeeMandatory:function(){return Garnish.hasAttr(this.$draggee,"data-mandatory")},isHoveringOverTab:function(){for(var t=0;t .fld-tab > .fld-tabcontent"),i=0;i").appendTo(e[i]));return t},createInsertion:function(){return $(''))},onDragStop:function(){var t=this.showingInsertion;if(t){if(this.draggingLibraryElement){var e=this.$draggee.clone().removeClass("unused");this.draggingMultiInstanceElement||(this.$draggee.css({visibility:"inherit",display:"field"}).addClass("hidden"),0===this.$draggee.siblings(".fld-field:not(.hidden)").length&&this.$draggee.closest(".fld-field-group").addClass("hidden")),this.$draggee=e,this.addItems(e)}}else if(!this.draggingLibraryElement){var i=this.draggingField?this.designer.$fields.filter('[data-attribute="'.concat(this.$draggee.data("attribute"),'"]:first')):this.designer.$uiLibraryElements.filter('[data-type="'.concat(this.$draggee.data("type"),'"]:first'));this.draggingField&&(i.removeClass("hidden"),i.closest(".fld-field-group").removeClass("hidden")),this.$draggee.data("fld-element").destroy(),this.$draggee=i}if(this.base(),this.$draggee.css({display:this.draggeeDisplay,visibility:this.draggingField||t?"hidden":"visible"}),t){var n,s=this.$draggee.closest(".fld-tab").data("fld-tab");if(this.draggingLibraryElement)n=s.initElement(this.$draggee);else if(n=this.$draggee.data("fld-element"),s!==this.originalTab){var a=n.config;this.originalTab.updateConfig((function(t){var e=n.index;return-1!==e&&(t.elements.splice(e,1),t)})),this.$draggee.data("fld-element").tab=s,n.config=a}n.updatePositionInConfig()}}})},3347:function(){Craft.FieldToggle=Garnish.Base.extend({$toggle:null,targetPrefix:null,targetSelector:null,reverseTargetSelector:null,_$target:null,_$reverseTarget:null,type:null,init:function(t){switch(this.$toggle=$(t),this.$toggle.data("fieldtoggle")&&(console.warn("Double-instantiating a field toggle on an element"),this.$toggle.data("fieldtoggle").destroy()),this.$toggle.data("fieldtoggle",this),this.type=this.getType(),"select"===this.type||"fieldset"===this.type?this.targetPrefix=this.$toggle.attr("data-target-prefix")||"":(this.targetSelector=this.normalizeTargetSelector(this.$toggle.data("target")),this.reverseTargetSelector=this.normalizeTargetSelector(this.$toggle.data("reverse-target"))),this.findTargets(),this.type){case"link":this.addListener(this.$toggle,"click","onToggleChange");break;case"fieldset":this.addListener(this.$toggle.find("input"),"change","onToggleChange");break;default:this.addListener(this.$toggle,"change","onToggleChange"),this.onToggleChange()}},normalizeTargetSelector:function(t){return t&&!t.match(/^[#\.]/)&&(t="#"+t),t},getType:function(){var t=this.$toggle.prop("nodeName");if("INPUT"===t&&"checkbox"===this.$toggle.attr("type")||"checkbox"===this.$toggle.attr("role")||"switch"===this.$toggle.attr("role"))return"checkbox";switch(t){case"SELECT":return Garnish.hasAttr(this.$toggle,"data-boolean-menu")?"booleanMenu":"select";case"A":return"link";default:return"fieldset"}},findTargets:function(){"select"===this.type||"fieldset"===this.type?this._$target=$(this.normalizeTargetSelector(this.targetPrefix+this.getToggleVal())):(this.targetSelector&&(this._$target=$(this.targetSelector)),this.reverseTargetSelector&&(this._$reverseTarget=$(this.reverseTargetSelector)))},getToggleVal:function(){switch(this.type){case"checkbox":return void 0!==this.$toggle.prop("checked")?this.$toggle.prop("checked"):"true"===this.$toggle.attr("aria-checked");case"booleanMenu":var t=this.$toggle.data("boolean");if(void 0!==t)return t;var e=this.$toggle.val();return e&&"0"!==e;default:var i;return null==(i="fieldset"===this.type?this.$toggle.find("input:checked:first").val():Garnish.getInputPostVal(this.$toggle))?null:i.replace(/[^\w]+/g,"-")}},onToggleChange:function(){"select"===this.type||"fieldset"===this.type?(this.hideTarget(this._$target),this.findTargets(),this.showTarget(this._$target)):(this.findTargets(),"link"===this.type?this.onToggleChange._show=this.$toggle.hasClass("collapsed")||!this.$toggle.hasClass("expanded"):this.onToggleChange._show=!!this.getToggleVal(),this.onToggleChange._show?(this.showTarget(this._$target),this.hideTarget(this._$reverseTarget)):(this.hideTarget(this._$target),this.showTarget(this._$reverseTarget)),delete this.onToggleChange._show)},showTarget:function(t){var e=this;if(t&&t.length){if(this.showTarget._currentHeight=t.height(),t.removeClass("hidden"),"select"!==this.type&&"fieldset"!==this.type){"link"===this.type&&(this.$toggle.removeClass("collapsed"),this.$toggle.addClass("expanded"));for(var i=0;ithis.totalCols&&(this.refreshCols._.totalCols=Math.floor((this.$container.width()-20)/this.settings.minColWidth)),this.settings.maxCols&&this.refreshCols._.totalCols>this.settings.maxCols&&(this.refreshCols._.totalCols=this.settings.maxCols)),0===this.refreshCols._.totalCols&&(this.refreshCols._.totalCols=1),!0===t||this.totalCols!==this.refreshCols._.totalCols){if(this.totalCols=this.refreshCols._.totalCols,this.colGutterDrop=this.settings.gutter*(this.totalCols-1)/this.totalCols,this.removeListener(this.$container,"resize"),"grid"===this.settings.fillMode)for(this.refreshCols._.itemIndex=0;this.refreshCols._.itemIndexthis.refreshCols._.tallestItemHeight&&(this.refreshCols._.tallestItemHeight=this.refreshCols._.itemHeight),this.refreshCols._.colIndex++;for(this.settings.snapToGrid&&(this.refreshCols._.remainder=this.refreshCols._.tallestItemHeight%this.settings.snapToGrid,this.refreshCols._.remainder&&(this.refreshCols._.tallestItemHeight+=this.settings.snapToGrid-this.refreshCols._.remainder)),this.refreshCols._.i=this.refreshCols._.itemIndex;this.refreshCols._.ithis.totalCols&&(this.refreshCols._.minColspan=this.totalCols),this.refreshCols._.maxColspan>this.totalCols&&(this.refreshCols._.maxColspan=this.totalCols),this.refreshCols._.colspan=this.refreshCols._.minColspan;this.refreshCols._.colspan<=this.refreshCols._.maxColspan;this.refreshCols._.colspan++)for(this.refreshCols._.$item.css("width",this.getItemWidthCss(this.refreshCols._.colspan)),this.itemHeightsByColspan[this.refreshCols._.item][this.refreshCols._.colspan]=this.refreshCols._.$item.outerHeight(),this.possibleItemColspans[this.refreshCols._.item].push(this.refreshCols._.colspan),this.possibleItemPositionsByColspan[this.refreshCols._.item][this.refreshCols._.colspan]=[],this.refreshCols._.positionLeft?(this.refreshCols._.minPosition=0,this.refreshCols._.maxPosition=0):this.refreshCols._.positionRight?(this.refreshCols._.minPosition=this.totalCols-this.refreshCols._.colspan,this.refreshCols._.maxPosition=this.refreshCols._.minPosition):(this.refreshCols._.minPosition=0,this.refreshCols._.maxPosition=this.totalCols-this.refreshCols._.colspan),this.refreshCols._.position=this.refreshCols._.minPosition;this.refreshCols._.position<=this.refreshCols._.maxPosition;this.refreshCols._.position++)this.possibleItemPositionsByColspan[this.refreshCols._.item][this.refreshCols._.colspan].push(this.refreshCols._.position);for(this.refreshCols._.colHeights=[],this.refreshCols._.i=0;this.refreshCols._.i=0;this.refreshCols._.i--)this.refreshCols._.layoutTotalCols[this.refreshCols._.i]!==this.refreshCols._.highestTotalCols&&this.layouts.splice(this.refreshCols._.i,1);for(this.refreshCols._.layoutHeights=[],this.refreshCols._.i=0;this.refreshCols._.i0&&(this.positionItems._.top+=this.settings.gutter),this.items[this.positionItems._.i].css("top",this.positionItems._.top),this.positionItems._.col=this.layout.positions[this.positionItems._.i];this.positionItems._.col<=this.positionItems._.endingCol;this.positionItems._.col++)this.positionItems._.colHeights[this.positionItems._.col]=this.positionItems._.top+this.itemHeightsByColspan[this.positionItems._.i][this.layout.colspans[this.positionItems._.i]]}this.$container.height(Math.max.apply(null,this.positionItems._.colHeights)),delete this.positionItems._},onItemResize:function(t){this.onItemResize._={},t.stopPropagation(),this.onItemResize._.item=$.inArray(t.currentTarget,this.$items),-1!==this.onItemResize._.item&&(this.onItemResize._.newHeight=this.items[this.onItemResize._.item].outerHeight(),this.onItemResize._.newHeight!==this.itemHeightsByColspan[this.onItemResize._.item][this.layout.colspans[this.onItemResize._.item]]&&(this.itemHeightsByColspan[this.onItemResize._.item][this.layout.colspans[this.onItemResize._.item]]=this.onItemResize._.newHeight,this.positionItems(!1))),delete this.onItemResize._},onRefreshCols:function(){this.trigger("refreshCols"),this.settings.onRefreshCols()},destroy:function(){this.$container.removeData("grid"),this.base()}},{defaults:{itemSelector:".item",cols:null,maxCols:null,minColWidth:320,gutter:14,fillMode:"top",colClass:"col",snapToGrid:null,onRefreshCols:$.noop}}),Craft.Grid.LayoutGenerator=Garnish.Base.extend({grid:null,_:null,init:function(t){this.grid=t},createLayouts:function(t,e,i,n,s){for(this._={},this._.c=0;this._.c/g,"");e=(e=e.replace(/['"‘’“”\[\]\(\)\{\}:]/g,"")).toLowerCase(),e=Craft.asciiString(e),this.settings.allowNonAlphaStart||(e=e.replace(/^[^a-z]+/,""));var i=Craft.filterArray(e.split(/[^a-z0-9]+/));if(e="","snake"===Craft.handleCasing)return i.join("_");for(var n=0;n').appendTo(this.$container));var t={url:Craft.getActionUrl(this.settings.uploadAction),formData:this.settings.postParameters,fileInput:this.$container.find(this.settings.fileInputSelector),paramName:this.settings.uploadParamName};void 0!==Craft.csrfTokenName&&void 0!==Craft.csrfTokenValue&&(t.formData[Craft.csrfTokenName]=Craft.csrfTokenValue),t.events={},t.events.fileuploadstart=this._onUploadStart.bind(this),t.events.fileuploadprogressall=this._onUploadProgress.bind(this),t.events.fileuploaddone=this._onUploadComplete.bind(this),t.events.fileuploadfail=this._onUploadFailure.bind(this),this.uploader=Craft.createUploader(null,this.$container,t),this.initButtons()},initButtons:function(){var t=this;this.$container.find(this.settings.uploadButtonSelector).on("click",(function(e){t.$container.find(t.settings.fileInputSelector).trigger("click")})),this.$container.find(this.settings.deleteButtonSelector).on("click",(function(e){confirm(Craft.t("app","Are you sure you want to delete this image?"))&&($(e.currentTarget).parent().append('
'),Craft.sendActionRequest("POST",t.settings.deleteAction,{data:t.settings.postParameters}).then((function(e){var i=e.data;t.refreshImage(i)})))}))},refreshImage:function(t){var e=$(t.html);$(this.settings.containerSelector).replaceWith(e),this.settings.onAfterRefreshImage(t),Craft.cp.elementThumbLoader.load(e),this.initImageUpload()},_onUploadStart:function(t){this.progressBar.$progressBar.css({top:Math.round(this.$container.outerHeight()/2)-6}),this.$container.addClass("uploading"),this.progressBar.resetProgressBar(),this.progressBar.showProgressBar()},_onUploadProgress:function(t,e){var i=parseInt(e.loaded/e.total*100,10);this.progressBar.setProgressPercentage(i)},_onUploadComplete:function(t,e){$(e.result.html),this.refreshImage(e.result),this.uploader.isLastUpload()&&(this.progressBar.hideProgressBar(),this.$container.removeClass("uploading"))},_onUploadFailure:function(t,e){var i,n=e.response(),s=(null==n||null===(i=n.jqXHR)||void 0===i?void 0:i.responseJSON)||{},a=s.message,r=s.filename,o=s.errors,l=void 0===o?{}:o,h=l?Object.values(l).flat():[];a||(a=h.length?h.join("\n"):r?Craft.t("app","Upload failed for “{filename}”.",{filename:r}):Craft.t("app","Upload failed.")),Craft.cp.displayError(a),this.progressBar.hideProgressBar(),this.$container.removeClass("uploading")}},{defaults:{postParameters:{},uploadAction:"",deleteAction:"",fileInputSelector:"",onAfterRefreshImage:$.noop,containerSelector:null,uploadButtonSelector:null,deleteButtonSelector:null,uploadParamName:"files"}})},657:function(){Craft.InfoIcon=Garnish.Base.extend({$container:null,$icon:null,$liveRegion:null,content:null,hud:null,init:function(t){var e=this;if(this.$icon=$(t),this.$liveRegion=$("
",{role:"status",class:"visually-hidden"}),this.$icon.data("infoicon")?(console.warn("Double-instantiating an info icon on an element"),this.content=this.$icon.data("infoicon").content,this.$icon.data("infoicon").destroy()):(this.content=this.$icon.html(),this.$icon.html("").attr({tabindex:0,role:"button",type:"button","aria-label":Craft.t("app","More info")}).wrap($("
",{class:"infoicon-container"})),this.$container=this.$icon.parent(),this.$container.append(this.$liveRegion)),this.$icon.data("infoicon",this),this.$icon[0].previousSibling&&this.$icon[0].previousSibling.nodeType===Node.TEXT_NODE&&!this.$icon.parent().hasClass("nowrap")){var i=this.$icon[0].previousSibling.nodeValue.match(/[^\s\-]+\s*$/);i&&(this.$icon[0].previousSibling.nodeValue=this.$icon[0].previousSibling.nodeValue.substring(0,i.index),$("
",{class:"nowrap",html:i[0].replace(/\s+$/,"")+" "}).insertAfter(this.$icon[0].previousSibling).append(this.$icon))}this.addListener(this.$icon,"click",(function(t){t.preventDefault(),t.stopPropagation(),e.showHud()})),this.addListener(this.$icon,"keydown",(function(t){e.hud&&e.hud.showing||![Garnish.SPACE_KEY,Garnish.RETURN_KEY].includes(t.keyCode)||(t.preventDefault(),t.stopPropagation(),e.showHud())}))},showHud:function(t){var e=this;this.hud?this.hud.show():(this.hud=new Garnish.HUD(this.$icon,this.content,{hudClass:"hud info-hud",closeOtherHUDs:!1,onShow:function(){Garnish.uiLayerManager.registerShortcut(Garnish.SPACE_KEY,(function(){e.hud.hide()})),e.$liveRegion.html(""),setTimeout((function(){e.$liveRegion.html(e.content)}),200)},onHide:function(){e.$liveRegion.html("")}}),Craft.initUiElements(this.hud.$body))},destroy:function(){this.$icon.removeData("infoicon"),this.base()}})},4487:function(){Craft.LightSwitch=Garnish.Base.extend({settings:null,$outerContainer:null,$innerContainer:null,$input:null,small:!1,on:!1,indeterminate:!1,dragger:null,dragStartMargin:null,init:function(t,e){if(this.$outerContainer=$(t),this.$outerContainer.data("lightswitch")&&(console.warn("Double-instantiating a lightswitch on an element"),this.$outerContainer.data("lightswitch").destroy()),this.$outerContainer.data("lightswitch",this),this.small=this.$outerContainer.hasClass("small"),this.setSettings(e,Craft.LightSwitch.defaults),this.$innerContainer=this.$outerContainer.find(".lightswitch-container:first"),this.$input=this.$outerContainer.find("input:first"),!this.$input.prop("disabled")){this.on=this.$outerContainer.hasClass("on"),this.indeterminate=this.$outerContainer.hasClass("indeterminate"),this.addListener(this.$outerContainer,"mousedown","_onMouseDown"),this.addListener(this.$outerContainer,"keydown","_onKeyDown"),this.dragger=new Garnish.BaseDrag(this.$outerContainer,{axis:Garnish.X_AXIS,ignoreHandleSelector:null,onDragStart:this._onDragStart.bind(this),onDrag:this._onDrag.bind(this),onDragStop:this._onDragStop.bind(this)});var i=this.$outerContainer.parent(".lightswitch-inner-container");i.length&&(this.addListener(i.children('span[data-toggle="off"]'),"click",this.turnOff),this.addListener(i.children('span[data-toggle="on"]'),"click",this.turnOn))}},turnOn:function(t){var e=!this.on;if(this.on=!0,this.indeterminate=!1,this.$outerContainer.addClass("dragging"),Garnish.prefersReducedMotion())this.$innerContainer.css("margin-"+Craft.left,0);else{var i={};i["margin-"+Craft.left]=0,this.$innerContainer.velocity("stop").velocity(i,Craft.LightSwitch.animationDuration,this._onSettle.bind(this))}this.$input.val(this.settings.value),this.$outerContainer.addClass("on"),this.$outerContainer.removeClass("indeterminate"),this.$outerContainer.attr("aria-checked","true"),e&&!0!==t&&this.onChange()},turnOff:function(t){var e=this.on||this.indeterminate;if(this.on=!1,this.indeterminate=!1,this.$outerContainer.addClass("dragging"),Garnish.prefersReducedMotion())this.$innerContainer.css("margin-"+Craft.left,this._getOffMargin());else{var i={};i["margin-"+Craft.left]=this._getOffMargin(),this.$innerContainer.velocity("stop").velocity(i,Craft.LightSwitch.animationDuration,this._onSettle.bind(this))}this.$input.val(""),this.$outerContainer.removeClass("on"),this.$outerContainer.removeClass("indeterminate"),this.$outerContainer.attr("aria-checked","false"),e&&!0!==t&&this.onChange()},turnIndeterminate:function(t){var e=!this.indeterminate;this.on=!1,this.indeterminate=!0,this.$outerContainer.addClass("dragging");var i={};i["margin-"+Craft.left]=this._getOffMargin()/2,this.$innerContainer.velocity("stop").velocity(i,Craft.LightSwitch.animationDuration,this._onSettle.bind(this)),this.$input.val(this.settings.indeterminateValue),this.$outerContainer.removeClass("on"),this.$outerContainer.addClass("indeterminate"),this.$outerContainer.attr("aria-checked","mixed"),e&&!0!==t&&this.onChange()},toggle:function(){this.indeterminate||!this.on?this.turnOn():this.turnOff()},onChange:function(){this.trigger("change"),this.settings.onChange(this.on),this.$outerContainer.trigger("change")},_onMouseDown:function(){this.addListener(Garnish.$doc,"mouseup","_onMouseUp")},_onMouseUp:function(){this.removeListener(Garnish.$doc,"mouseup"),this.dragger.dragging||this.toggle()},_onKeyDown:function(t){switch(t.keyCode){case Garnish.SPACE_KEY:this.toggle(),t.preventDefault();break;case Garnish.RIGHT_KEY:"ltr"===Craft.orientation?this.turnOn():this.turnOff(),t.preventDefault();break;case Garnish.LEFT_KEY:"ltr"===Craft.orientation?this.turnOff():this.turnOn(),t.preventDefault()}},_getMargin:function(){return parseInt(this.$innerContainer.css("margin-"+Craft.left))},_onDragStart:function(){this.$outerContainer.addClass("dragging"),this.dragStartMargin=this._getMargin()},_onDrag:function(){var t;(t="ltr"===Craft.orientation?this.dragStartMargin+this.dragger.mouseDistX:this.dragStartMargin-this.dragger.mouseDistX)
0&&(t=0),this.$innerContainer.css("margin-"+Craft.left,t)},_onDragStop:function(){this._getMargin()>this._getOffMargin()/2?this.turnOn():this.turnOff()},_onSettle:function(){this.$outerContainer.removeClass("dragging")},destroy:function(){this.$outerContainer.removeData("lightswitch"),this.base(),this.dragger.destroy()},_getOffMargin:function(){return this.small?-10:-12}},{animationDuration:100,defaults:{value:"1",indeterminateValue:"-",onChange:$.noop}})},6966:function(){Craft.Listbox=Garnish.Base.extend({$container:null,$options:null,$selectedOption:null,selectedOptionIndex:null,init:function(t,e){var i=this;this.$container=$(t),this.setSettings(e,Craft.Listbox.defaults),this.$container.data("listbox")&&(console.warn("Double-instantiating a listbox on an element"),this.$container.data("listbox").destroy()),this.$container.data("listbox",this),this.$options=this.$container.find("button,[role=option]"),this.$selectedOption=this.$options.filter("[aria-pressed=true],[aria-selected=true]").removeAttr("aria-selected").attr("aria-pressed","true"),this.$selectedOption.length?this.selectedOptionIndex=this.$options.index(this.$selectedOption):this.$selectedOption=null,this.addListener(this.$options,"click",(function(t){i.select(i.$options.index($(t.currentTarget))),t.preventDefault()}))},select:function(t){t<0||t>=this.$options.length||t===this.selectedOptionIndex||(this.$selectedOption&&this.$selectedOption.removeClass(this.settings.selectedClass).attr("aria-pressed","false"),this.$selectedOption=this.$options.eq(t).addClass(this.settings.selectedClass).attr("aria-pressed","true"),this.selectedOptionIndex=t,this.settings.onChange(this.$selectedOption,t),this.trigger("change",{$selectedOption:this.$selectedOption,selectedOptionIndex:t}))},disable:function(){this.base(),this.$container.attr("aria-disabled","true")},enable:function(){this.base(),this.$container.removeAttr("aria-disabled")},destroy:function(){this.$container.removeData("listbox"),this.base()}},{defaults:{selectedClass:"active",focusClass:"focus",onChange:$.noop}})},5080:function(){function t(t,e){(null==e||e>t.length)&&(e=t.length);for(var i=0,n=new Array(e);i"),this.editorWidth=Craft.getLocalStorage("LivePreview.editorWidth",Craft.LivePreview.defaultEditorWidth),this.addListener(this.$trigger,"activate","toggle"),Craft.cp.on("beforeSaveShortcut",(function(){e.inPreviewMode&&e.moveFieldsBack()})),Craft.Preview.instances.push(this)},get editorWidth(){return this._editorWidth},get editorWidthInPx(){return this._editorWidthInPx},set editorWidth(t){var e;t>=1?(e=t,t/=Garnish.$win.width()):e=Math.round(t*Garnish.$win.width()),e",{class:"modal-shade dark"}).appendTo(Garnish.$bod),this.$previewContainer=$("",{class:"lp-preview-container"}).appendTo(Garnish.$bod),this.$iframeContainer=$("",{class:"lp-iframe-container"}).appendTo(this.$previewContainer),this.$editorContainer=$("",{class:"lp-editor-container"}).appendTo(Garnish.$bod);var e=$("",{class:"flex"}).appendTo(this.$editorContainer);this.$editor=$("",{class:"lp-editor"}).appendTo(this.$editorContainer),this.$dragHandle=$("",{class:"lp-draghandle"}).appendTo(this.$editorContainer);var i=$("",{type:"button",class:"btn",text:Craft.t("app","Close Preview")}).appendTo(e);$("",{class:"flex-grow"}).appendTo(e);var n=$("",{type:"button",class:"btn submit",text:Craft.t("app","Save")}).appendTo(e);this.dragger=new Garnish.BaseDrag(this.$dragHandle,{axis:Garnish.X_AXIS,onDragStart:this._onDragStart.bind(this),onDrag:this._onDrag.bind(this),onDragStop:this._onDragStop.bind(this)}),this.addListener(i,"click","exit"),this.addListener(n,"click","save")}this.handleWindowResize(),this.addListener(Garnish.$win,"resize","handleWindowResize"),this.$editorContainer.css(Craft.left,-this.editorWidthInPx+"px"),this.$previewContainer.css(Craft.right,-this.getIframeWidth()),this.fields=[];for(var s=$(this.settings.fields),a=0;awindow.scrollTo('+this._scrollX+", "+this._scrollY+");<\/script>",n=$('');this.$iframe?n.insertBefore(this.$iframe):n.appendTo(this.$iframeContainer),this.addListener(n,"load",(function(){this.$iframe&&this.$iframe.remove(),this.$iframe=n,this._slideInOnIframeLoad&&(this.slideIn(),this._slideInOnIframeLoad=!1),this.removeListener(n,"load")})),Garnish.requestAnimationFrame((function(){n[0].contentWindow.document.open(),n[0].contentWindow.document.write(i),n[0].contentWindow.document.close(),e.onResponse()}))},handleError:function(){this.onResponse()},onResponse:function(){this.loading=!1,this.checkAgain&&(this.checkAgain=!1,this.updateIframe())},_getClone:function(t){var e=t.clone();return Garnish.copyInputValues(t,e),e.attr("id",""),e.find("[id]").attr("id",""),e},_onDragStart:function(){this.dragStartEditorWidth=this.editorWidthInPx,this.$previewContainer.addClass("dragging")},_onDrag:function(){"ltr"===Craft.orientation?this.editorWidth=this.dragStartEditorWidth+this.dragger.mouseDistX:this.editorWidth=this.dragStartEditorWidth-this.dragger.mouseDistX,this.updateWidths(),this.trigger("drag")},_onDragStop:function(){this.$previewContainer.removeClass("dragging"),Craft.setLocalStorage("LivePreview.editorWidth",this.editorWidth)},destroy:function(){var t=this;Craft.Preview.instances=Craft.Preview.instances.filter((function(e){return e!==t})),this.base()}},{defaultEditorWidth:.33,minEditorWidthInPx:320,instances:[],defaults:{trigger:".livepreviewbtn",fields:null,extraFields:null,previewUrl:null,previewAction:null,previewParams:{}},getActive:function(){var e,i=function(e,i){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,i){if(e){if("string"==typeof e)return t(e,i);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?t(e,i):void 0}}(e))||i&&e&&"number"==typeof e.length){n&&(e=n);var s=0,a=function(){};return{s:a,n:function(){return s>=e.length?{done:!0}:{done:!1,value:e[s++]}},e:function(t){throw t},f:a}}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 r,o=!0,l=!1;return{s:function(){n=n.call(e)},n:function(){var t=n.next();return o=t.done,t},e:function(t){l=!0,r=t},f:function(){try{o||null==n.return||n.return()}finally{if(l)throw r}}}}(Craft.LivePreview.instances);try{for(i.s();!(e=i.n()).done;){var n=e.value;if(n.inPreviewMode)return n}}catch(t){i.e(t)}finally{i.f()}}}),Craft.LivePreview.init=function(t){Craft.livePreview=new Craft.LivePreview(t)}},7439:function(){Craft.PasswordInput=Garnish.Base.extend({$passwordWrapper:null,$passwordInput:null,$textInput:null,$currentInput:null,$showPasswordToggle:null,showingPassword:null,init:function(t,e){this.$passwordInput=$(t),this.$passwordWrapper=this.$passwordInput.parent(".passwordwrapper"),this.settings=$.extend({},Craft.PasswordInput.defaults,e),this.$passwordInput.data("passwordInput")&&(console.warn("Double-instantiating a password input on an element"),this.$passwordInput.data("passwordInput").destroy()),this.$passwordInput.data("passwordInput",this),this.$showPasswordToggle=$(''),this.$showPasswordToggle.addClass("password-toggle"),this.$showPasswordToggle.insertAfter(this.$passwordInput),this.initInputFocusEvents(this.$passwordInput),this.addListener(this.$showPasswordToggle,"click","onClick"),this.hidePassword(),this.addListener(this.$passwordWrapper.closest("form"),"submit","hidePassword")},setCurrentInput:function(t){this.$currentInput&&(t.insertAfter(this.$currentInput),this.$currentInput.detach(),t.trigger("focus"),t.val(this.$currentInput.val())),this.$currentInput=t,this.addListener(this.$currentInput,"keypress,keyup,change,blur","onInputChange")},updateToggleLabel:function(t){this.$showPasswordToggle.text(t)},initInputFocusEvents:function(t){this.addListener(t,"focus",(function(){this.$passwordWrapper.addClass("focus")})),this.addListener(t,"blur",(function(){this.$passwordWrapper.removeClass("focus")}))},showPassword:function(){this.showingPassword||(this.$textInput||(this.$textInput=this.$passwordInput.clone(!0),this.$textInput.attr({type:"text",autocapitalize:"off"}),this.initInputFocusEvents(this.$textInput)),this.setCurrentInput(this.$textInput),this.updateToggleLabel(Craft.t("app","Hide")),this.showingPassword=!0)},hidePassword:function(){!1!==this.showingPassword&&(this.setCurrentInput(this.$passwordInput),this.updateToggleLabel(Craft.t("app","Show")),this.showingPassword=!1)},togglePassword:function(){this.showingPassword?this.hidePassword():this.showPassword(),this.settings.onToggleInput(this.$currentInput)},onInputChange:function(){this.$currentInput.val()?this.$showPasswordToggle.removeClass("invisible"):this.$showPasswordToggle.addClass("invisible")},onClick:function(t){if(this.$currentInput[0].setSelectionRange){var e=this.$currentInput[0].selectionStart,i=this.$currentInput[0].selectionEnd;this.togglePassword(),this.$currentInput[0].setSelectionRange(e,i)}else this.togglePassword()},destroy:function(){this.$passwordInput.removeData("passwordInput"),this.base()}},{defaults:{onToggleInput:$.noop}})},5328:function(){function t(t,i){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,i){if(t){if("string"==typeof t)return e(t,i);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?e(t,i):void 0}}(t))||i&&t&&"number"==typeof t.length){n&&(t=n);var s=0,a=function(){};return{s:a,n:function(){return s>=t.length?{done:!0}:{done:!1,value:t[s++]}},e:function(t){throw t},f:a}}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 r,o=!0,l=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return o=t.done,t},e:function(t){l=!0,r=t},f:function(){try{o||null==n.return||n.return()}finally{if(l)throw r}}}}function e(t,e){(null==e||e>t.length)&&(e=t.length);for(var i=0,n=new Array(e);i",{type:"hidden",name:"__PREVIEW_FIELDS__",value:"1"}),this.$fieldPlaceholder=$(""),this.editorWidth=Craft.getLocalStorage("LivePreview.editorWidth",Craft.Preview.defaultEditorWidth),Craft.Preview.instances.push(this)},get editorWidth(){return this._editorWidth},get editorWidthInPx(){return this._editorWidthInPx},set editorWidth(t){var e;t>=1?(e=t,t/=Garnish.$win.width()):e=Math.round(t*Garnish.$win.width()),e",{class:"modal-shade dark"}).appendTo(Garnish.$bod),this.$previewWrapper=$("",{role:"dialog","aria-modal":"true","aria-labelledby":"lp-preview-heading"}).appendTo(Garnish.$bod),this.$modalLabel=$("",{id:"lp-preview-heading",class:"visually-hidden",html:Craft.t("app","Preview")}).appendTo(this.$previewWrapper),this.$editorContainer=$("",{class:"lp-editor-container"}).appendTo(this.$previewWrapper),this.$previewContainer=$("",{class:"lp-preview-container",id:"lp-preview-container"}).appendTo(this.$previewWrapper),this.$notifier=$("",{class:"visually-hidden","aria-live":"assertive"}).appendTo(this.$previewContainer);var i=$("",{class:"flex"}).appendTo(this.$editorContainer);this.$editor=$("",{class:"lp-editor"}).appendTo(this.$editorContainer),this.$dragHandle=$("",{class:"lp-draghandle"}).appendTo(this.$editorContainer);var n=$("",{type:"button",class:"btn",text:Craft.t("app","Close Preview")}).appendTo(i);if($("",{class:"flex-grow"}).appendTo(i),this.$spinner=$("",{class:"spinner hidden",title:Craft.t("app","Saving")}).appendTo(i),this.$statusIcon=$("",{class:"invisible"}).appendTo(i),this.$statusMessage=$("",{class:"visually-hidden","aria-live":"polite"}).appendTo(i),this.$previewSkipLink=$("",{class:"skip-link btn",href:"#lp-preview-container",html:e}).appendTo(i),Craft.Pro){if(this.$previewHeader=$("",{class:"lp-preview-header"}).appendTo(this.$previewContainer),this.elementEditor.settings.previewTargets.length>1){this.$targetBtn=$("",{type:"button",class:"btn menubtn",text:this.elementEditor.settings.previewTargets[0].label}).appendTo(this.$previewHeader),this.$targetMenu=$("",{class:"menu lp-target-menu"}).insertAfter(this.$targetBtn);for(var s,a=$("",{class:"padded"}).appendTo(this.$targetMenu),r=0;r").appendTo(a),$("",{data:{target:r},text:this.elementEditor.settings.previewTargets[r].label,class:0===r?"sel":null}).appendTo(s);new Garnish.MenuBtn(this.$targetBtn,{onOptionSelect:function(e){t.switchTarget($(e).data("target"))}}),$('').appendTo(this.$previewHeader)}this._buildDeviceTypeFieldset(),$('').appendTo(this.$previewHeader);var o=$('').appendTo(this.$previewHeader);this.$orientationBtn=$("",{type:"button",class:"btn disabled","data-icon":"rotate","aria-disabled":"true",text:Craft.t("app","Rotate"),"aria-label":Craft.t("app","Rotate")}).appendTo(o),this.addListener(this.$orientationBtn,"click","switchOrientation"),this.$refreshBtn=$("",{type:"button",class:"btn",text:Craft.t("app","Refresh"),"data-icon":"refresh"}).appendTo(o),this.addListener(this.$refreshBtn,"click",(function(){t.updateIframe(!1,!0)})),this.deviceOrientation=Craft.getLocalStorage("LivePreview.orientation")}this.$iframeContainer=$("",{class:"lp-iframe-container"}).appendTo(this.$previewContainer),this.$devicePreviewContainer=$("",{class:"lp-device-preview-container"}).appendTo(this.$iframeContainer),this.$deviceMask=$("",{class:"lp-device-mask"}).appendTo(this.$iframeContainer),this.$bumperLink=$("",{class:"skip-link btn lp-preview-container__bumper-link",html:e,href:"#lp-preview-container"}),this.$bumperLink.appendTo(this.$previewContainer),this.dragger=new Garnish.BaseDrag(this.$dragHandle,{axis:Garnish.X_AXIS,onDragStart:this._onDragStart.bind(this),onDrag:this._onDrag.bind(this),onDragStop:this._onDragStop.bind(this)}),this.addListener(n,"click","close"),this.addListener(this.$statusIcon,"click",(function(){t.elementEditor.showStatusHud(t.$statusIcon)}))}this.handleWindowResize(),this.addListener(Garnish.$win,"resize","handleWindowResize"),this.$editorContainer.css(Craft.left,-this.editorWidthInPx+"px"),this.$previewContainer.css(Craft.right,-this.getIframeWidth()),this.fields=[];var l=$("#content .field").not($("#content .field .field"));if(l.length){this.$tempInput.insertBefore(l.get(0));for(var h=0;h",{class:"btngroup lp-device-type","aria-label":Craft.t("app","Device type")}).appendTo(this.$previewHeader),$("",{type:"button",class:"btn lp-device-type-btn--desktop active",title:Craft.t("app","Desktop"),"aria-label":Craft.t("app","Desktop"),"aria-pressed":"true",data:{width:"",height:"",deviceType:"desktop"}}).appendTo(this.$deviceTypeContainer),$("",{type:"button",class:"btn lp-device-type-btn--tablet",title:Craft.t("app","Tablet"),"aria-label":Craft.t("app","Tablet"),"aria-pressed":"false",data:{width:768,height:1024,deviceType:"tablet"}}).appendTo(this.$deviceTypeContainer),$("",{type:"button",class:"btn lp-device-type-btn--phone",title:Craft.t("app","Mobile"),"aria-label":Craft.t("app","Mobile"),"aria-pressed":"false",data:{width:375,height:667,deviceType:"phone"}}).appendTo(this.$deviceTypeContainer),this.deviceBtnGroup=new Craft.Listbox(this.$deviceTypeContainer,{onChange:function(e){t.switchDeviceType(e)}})},_activeTarget:function(){return this.elementEditor.settings.previewTargets[this.activeTarget]},_autoRefresh:function(){var t=this._activeTarget();return void 0===a(t.refresh)||!!t.refresh},switchTarget:function(t){this.activeTarget=t,this.$targetBtn.text(this.elementEditor.settings.previewTargets[t].label),this.$targetMenu.find("a.sel").removeClass("sel"),this.$targetMenu.find("a").eq(t).addClass("sel"),this.updateIframe(!0),this.trigger("switchTarget",{previewTarget:this.elementEditor.settings.previewTargets[t]})},handleWindowResize:function(){this.editorWidth=this.editorWidth,this.updateWidths()},slideIn:function(){var t=this;this.isActive&&!this.isVisible&&($("html").addClass("noscroll"),this.$shade.velocity("fadeIn"),this.$editorContainer.show().velocity("stop").animateLeft(0,Garnish.getUserPreferredAnimationDuration(this.animationDuration),(function(){t.trigger("slideIn"),Garnish.$win.trigger("resize")})),this.$previewContainer.show().velocity("stop").animateRight(0,Garnish.getUserPreferredAnimationDuration(this.animationDuration)),this.isVisible=!0,Garnish.uiLayerManager.addLayer(this.$previewWrapper),Garnish.hideModalBackgroundLayers(),Craft.setFocusWithin(this.$previewWrapper),Craft.trapFocusWithin(this.$previewWrapper),Garnish.uiLayerManager.registerShortcut(Garnish.ESC_KEY,(function(){t.close()})))},close:function(){var t=this;this.isActive&&this.isVisible&&(this.trigger("beforeClose"),$("html").removeClass("noscroll"),this.removeListener(Garnish.$win,"resize"),Garnish.uiLayerManager.removeLayer(),Garnish.resetModalBackgroundLayerVisibility(),this.$tempInput.detach(),this.moveFieldsBack(),Garnish.prefersReducedMotion()?this.$shade.velocity("fadeOut"):this.$shade.delay(200).velocity("fadeOut"),this.$editorContainer.velocity("stop").animateLeft(-this.editorWidthInPx,Garnish.getUserPreferredAnimationDuration(this.animationDuration),(function(){for(var e=0;e",{class:"lp-preview",frameborder:0,src:e,title:Craft.t("app","Preview")});i.$iframe?i.$iframe.replaceWith(s):s.appendTo(i.$devicePreviewContainer),i._useIframeResizer()?(t||null===i.iframeHeight||(s.height(i.iframeHeight),i.$iframeContainer.scrollTop(i.scrollTop),i.$iframeContainer.scrollLeft(i.scrollLeft)),iFrameResize($.extend({checkOrigin:!1,scrolling:!0,onInit:function(t){i.iframeLoaded=!0,i.iframeHeight=null,i.scrollTop=null,i.scrollLeft=null,t.scrolling="no"}},Craft.previewIframeResizerOptions||{}),s[0])):s.on("load",(function(){i.iframeLoaded=!0,!t&&n&&(null!==i.scrollTop&&$(s[0].contentWindow.document).scrollTop(i.scrollTop),null!==i.scrollLeft&&$(s[0].contentWindow.document).scrollLeft(i.scrollLeft))})),i.url=e,i.$iframe=s,i._devicePreviewIsActive()&&i.updateDevicePreview(),i.trigger("afterUpdateIframe",{previewTarget:i.elementEditor.settings.previewTargets[i.activeTarget],$iframe:i.$iframe}),i.slideIn()})):this.slideIn()},_devicePreviewIsActive:function(){return"desktop"!==this.currentDeviceType},_updateNotifier:function(){var t=this;this.$notifier.html="";var e="desktop"===this.currentDeviceType?"Previewing {type} device":"Previewing {type} device in {orientation}",i={type:this._getDeviceTypeTranslation(this.currentDeviceType)};"desktop"!==this.currentDeviceType&&(i=n(n({},i),{orientation:this._getDeviceOrientationTranslation(this.deviceOrientation)}));var s=Craft.t("app",e,i);setTimeout((function(){t.$notifier.text(s)}),200)},switchDeviceType:function(t){this.$iframeContainer.removeClass("lp-iframe-container--rotating");var e=t.data("deviceType");if(e===this.currentDeviceType)return!1;this.currentDeviceType=e,this.deviceWidth=t.data("width"),this.deviceHeight=t.data("height"),"desktop"===this.currentDeviceType?(this.$orientationBtn.addClass("disabled").attr("aria-disabled","true"),this.$iframeContainer.removeClass("lp-iframe-container--has-device-preview")):(this.$orientationBtn.removeClass("disabled").removeAttr("aria-disabled"),this.$iframeContainer.addClass("lp-iframe-container--has-device-preview")),"tablet"===this.currentDeviceType?this.$iframeContainer.addClass("lp-iframe-container--tablet"):this.$iframeContainer.removeClass("lp-iframe-container--tablet"),this._updateNotifier(),"desktop"!==this.currentDeviceType&&this.updateDevicePreview()},switchOrientation:function(){var t=this;if(!this._devicePreviewIsActive())return!1;this.deviceOrientation&&"portrait"!==this.deviceOrientation?this.deviceOrientation="portrait":this.deviceOrientation="landscape",Craft.setLocalStorage("LivePreview.orientation",this.deviceOrientation),this.$iframeContainer.addClass("lp-iframe-container--rotating"),this.updateDevicePreview(),this._updateNotifier(),setTimeout((function(){t.$iframeContainer.removeClass("lp-iframe-container--rotating")}),300)},updateDevicePreview:function(){var t=1,e=1,i=1,n=this.$previewContainer.height()-50-48,s=this.$previewContainer.width()-48,a=this.deviceMaskDimensions[this.currentDeviceType].height,r=this.deviceMaskDimensions[this.currentDeviceType].width;"landscape"===this.deviceOrientation?(s').appendTo(Garnish.$bod),this.base(this.$container,$.extend({resizable:!0},i)),this.$container&&(this.$container.velocity("stop"),this.$container.show().css("opacity",1),this.$shade.velocity("stop"),this.$shade.show().css("opacity",1),Garnish.setFocusWithin(this.$container)),this.$bumperButtonStart=Craft.ui.createButton({html:Craft.t("app","Close Preview"),class:"skip-link"}),this.addListener(this.$bumperButtonStart,"click",(function(){n.hide()})),this.$bumperButtonEnd=this.$bumperButtonStart.clone(!0),this.loadAsset(t,i.startingWidth,i.startingHeight)},_onHide:function(){return Craft.PreviewFileModal.openInstance=null,this.elementSelect?this.elementSelect.focusItem(this.elementSelect.$focusedItem):this.$triggerElement&&this.$triggerElement.length&&this.$triggerElement.trigger("focus"),this.$shade.remove(),this.destroy()},_addBumperButtons:function(){this.$container.prepend(this.$bumperButtonStart).append(this.$bumperButtonEnd)},_addModalName:function(){var t="preview-heading";$("",{class:"visually-hidden",id:t,text:Craft.t("app","Preview file")}).prependTo(this.$container),this.$container.attr("aria-labelledby",t)},selfDestruct:function(){var t=Craft.PreviewFileModal.openInstance;return t.hide(),t.$shade.remove(),t.destroy(),Craft.PreviewFileModal.openInstance=null,Craft.focalPoint.destruct(),Craft.focalPoint=null,!0},loadAsset:function(t,e,i){var n=this;this.assetId=t,this.$container.empty(),this.loaded=!1,this.desiredHeight=null,this.desiredWidth=null;var s=.66*Garnish.$win.height(),a=Math.min(s/3*4,Garnish.$win.width()-2*this.settings.minGutter);if(s=a/4*3,e&&i){var r=e/i;a=Math.min(e,Garnish.$win.width()-2*this.settings.minGutter),(a=(s=Math.min(a/r,Garnish.$win.height()-2*this.settings.minGutter))*r)>Math.min(e,Garnish.$win.width()-2*this.settings.minGutter)&&(s=(a=Math.min(e,Garnish.$win.width()-2*this.settings.minGutter))/r)}this._resizeContainer(a,s),this.$spinner=$('').appendTo(this.$container);var o=this.$container.height()/2-this.$spinner.height()/2+"px",l=this.$container.width()/2-this.$spinner.width()/2+"px";this.$spinner.css({left:l,top:o,position:"absolute"}),this.requestId++;var h={assetId:t,requestId:this.requestId},d=function(){n.$container.removeClass("loading"),n.$spinner.remove(),n.loaded=!0};Craft.sendActionRequest("POST","assets/preview-file",{data:h}).then((function(t){if(d(),t.data.requestId==n.requestId){if(!t.data.previewHtml)return n.$container.addClass("zilch"),n.$container.append($("",{text:Craft.t("app","No preview available.")})),void n._addBumperButtons();n.$container.removeClass("zilch"),n.$container.attr("data-asset-id",n.assetId),n.$container.append(t.data.previewHtml),n._addBumperButtons(),n._addModalName(),Craft.appendHeadHtml(t.data.headHtml),Craft.appendBodyHtml(t.data.bodyHtml)}})).catch((function(t){var e=t.response;d(),Craft.cp.displayError(e.data.message),n.hide()}))},_resizeContainer:function(t,e){this.$container.css({width:t,"min-width":t,"max-width":t,height:e,"min-height":e,"max-height":e,top:(Garnish.$win.height()-e)/2,left:(Garnish.$win.width()-t)/2})}},{defaultSettings:{startingWidth:null,startingHeight:null}})},872:function(){Craft.ProgressBar=Garnish.Base.extend({$progressBar:null,$innerProgressBar:null,$progressBarStatus:null,_itemCount:0,_processedItemCount:0,_displaySteps:!1,init:function(t,e){e&&(this._displaySteps=!0),this.$progressBar=$('').appendTo(t),this.$innerProgressBar=$('').appendTo(this.$progressBar),this.$progressBarStatus=$('').insertAfter(this.$progressBar),this.resetProgressBar()},resetProgressBar:function(){this.setProgressPercentage(100),this.$progressBar.addClass("pending"),this.setItemCount(1),this.setProcessedItemCount(0),this.$progressBarStatus.html(""),this._displaySteps&&this.$progressBar.addClass("has-status")},hideProgressBar:function(){this.$progressBar.addClass("hidden"),this.$progressBarStatus.addClass("hidden")},showProgressBar:function(){this.$progressBar.removeClass("hidden"),this.$progressBarStatus.removeClass("hidden")},setItemCount:function(t){this._itemCount=t},incrementItemCount:function(t){this._itemCount+=t},setProcessedItemCount:function(t){this._processedItemCount=t},incrementProcessedItemCount:function(t){this._processedItemCount+=t},updateProgressBar:function(){this._itemCount=Math.max(this._itemCount,1);var t=Math.min(100,Math.round(100*this._processedItemCount/this._itemCount));this.setProgressPercentage(t),this._displaySteps&&this.$progressBarStatus.html(this._processedItemCount+" / "+this._itemCount)},setProgressPercentage:function(t,e){0===t?this.$progressBar.addClass("pending"):(this.$progressBar.removeClass("pending"),e?this.$innerProgressBar.velocity("stop").velocity({width:t+"%"},"fast"):this.$innerProgressBar.velocity("stop").width(t+"%"))}})},1396:function(){Craft.PromptHandler=Garnish.Base.extend({modal:null,$modalContainerDiv:null,$prompt:null,$promptApplyToRemainingContainer:null,$promptApplyToRemainingCheckbox:null,$promptApplyToRemainingLabel:null,$pomptChoices:null,_prompts:[],_promptBatchCallback:$.noop,_promptBatchReturnData:[],_promptBatchNum:0,resetPrompts:function(){this._prompts=[],this._promptBatchCallback=$.noop,this._promptBatchReturnData=[],this._promptBatchNum=0},addPrompt:function(t){this._prompts.push(t)},getPromptCount:function(){return this._prompts.length},showBatchPrompts:function(t){this._promptBatchCallback=t,this._promptBatchReturnData=[],this._promptBatchNum=0,this._showNextPromptInBatch()},_showNextPromptInBatch:function(){var t=this._prompts[this._promptBatchNum].prompt,e=this._prompts.length-(this._promptBatchNum+1);this._showPrompt(t.message,t.choices,this._handleBatchPromptSelection.bind(this),e)},_handleBatchPromptSelection:function(t,e){var i=this._prompts[this._promptBatchNum],n=this._prompts.length-(this._promptBatchNum+1),s=$.extend(i,{choice:t});this._promptBatchReturnData.push(s),n?(this._promptBatchNum++,e?this._handleBatchPromptSelection(t,!0):this._showNextPromptInBatch()):"function"==typeof this._promptBatchCallback&&this._promptBatchCallback(this._promptBatchReturnData)},_showPrompt:function(t,e,i,n){this._promptCallback=i,null===this.modal&&(this.modal=new Garnish.Modal({closeOtherModals:!1})),null===this.$modalContainerDiv&&(this.$modalContainerDiv=$('').addClass().appendTo(Garnish.$bod)),this.$prompt=$('').appendTo(this.$modalContainerDiv.empty()),this.$promptMessage=$('').appendTo(this.$prompt),this.$promptChoices=$('').appendTo(this.$prompt),this.$promptApplyToRemainingContainer=$('').appendTo(this.$prompt).hide(),this.$promptApplyToRemainingCheckbox=$('').appendTo(this.$promptApplyToRemainingContainer),this.$promptApplyToRemainingLabel=$("").appendTo(this.$promptApplyToRemainingContainer),this.$promptButtons=$('').appendTo(this.$prompt),this.modal.setContainer(this.$modalContainerDiv),this.$promptMessage.html(t);for(var s=$("",{type:"button",class:"btn",text:Craft.t("app","Cancel")}).appendTo(this.$promptButtons),a=$("",{type:"submit",class:"btn submit disabled",text:Craft.t("app","OK")}).appendTo(this.$promptButtons),r=0;r ").appendTo(this.$promptChoices).find("input");this.addListener(o,"click",(function(){a.removeClass("disabled")}))}this.addListener(a,"activate",(function(t){var e=$(t.currentTarget).parents(".modal").find("input[name=promptAction]:checked").val(),i=this.$promptApplyToRemainingCheckbox.prop("checked");this._selectPromptChoice(e,i)})),this.addListener(s,"activate",(function(){var t=this.$promptApplyToRemainingCheckbox.prop("checked");this._selectPromptChoice("cancel",t)})),n&&(this.$promptApplyToRemainingContainer.show(),this.$promptApplyToRemainingLabel.html(" "+Craft.t("app","Apply this to the {number} remaining conflicts?",{number:n}))),this.modal.show(),this.modal.removeListener(Garnish.Modal.$shade,"click"),this.addListener(Garnish.Modal.$shade,"click","_cancelPrompt")},_selectPromptChoice:function(t,e){var i=this;this.$prompt.fadeOut("fast",(function(){i.modal.hide(),i._promptCallback(t,e)}))},_cancelPrompt:function(){this._selectPromptChoice("cancel",!0)}})},8960:function(){Craft.Queue=Garnish.Base.extend({running:!1,paused:!1,pausedForVisibility:!1,jobs:null,get length(){return this.jobs.length},get isPaused(){return this.paused||this.pausedForVisibility},init:function(){var t=this;this.jobs=[],Garnish.$doc.on("visibilitychange",(function(){t.pausedForVisibility&&Craft.isVisible()&&(t.pausedForVisibility=!1,t._resume())}))},push:function(t){return this._add(t,"push")},unshift:function(t){return this._add(t,"unshift")},pause:function(){this.paused||(this.paused=!0,this.pausedForVisibility||this.trigger("pause"))},resume:function(){this.paused&&(this.paused=!1,this._resume())},_add:function(t,e){var i=this;return new Promise((function(n,s){i.jobs[e]((function(){return new Promise((function(e,i){t().then((function(t){n(t),e()})).catch((function(t){s(t),i()}))}))})),i.running||(i.trigger("beforeRun"),i.running=!0,i._exec())}))},clear:function(){this.jobs.length=0},_exec:function(){var t=this;if(!this.jobs.length)return this.running=!1,void this.trigger("afterRun");this.pausedForVisibility||Craft.isVisible()||(this.pausedForVisibility=!0,this.paused||this.trigger("pause")),this.paused||this.pausedForVisibility||(this.trigger("beforeExec"),this.jobs.shift()().finally((function(){t.trigger("afterExec"),t._exec()})))},_resume:function(){this.isPaused||(this.trigger("resume"),this._exec())}}),Craft.queue=new Craft.Queue},4070:function(){!function(t){Craft.SlidePicker=Garnish.Base.extend({min:null,max:null,totalSteps:null,value:null,label:null,describedBy:null,$container:null,$buttons:null,init:function(e,i){var n=this;this.setSettings(i,Craft.SlidePicker.defaults),this.$container=t("