1(self.webpackChunknodebb=self.webpackChunknodebb||[]).push([[18470,34154],{23824(A,S,l){A.exports=l(10215)},70012(A,S,l){"use strict";var R,p;R=[l(91749),l(29930)],p=(function(v,h){let C=[],y=0;function g(t,n){typeof t!="string"&&(t=$(t),t=t.data("type")||t.attr("type")||t.prop("tagName"));const i=f.plugins[t.toLowerCase()];if(i==null)return;const e=i[n];return typeof e=="function"?e:null}const a={deepClone:function(t){return typeof t=="object"?JSON.parse(JSON.stringify(t)):t},createElement:function(t,n,i){const e=document.createElement(t);for(const[o,s]of Object.entries(n))e.setAttribute(o,s);return i&&e.appendChild(document.createTextNode(i)),e},initElement:function(t){const n=g(t,"init");n?.call(f,$(t))},destructElement:function(t){const n=g(t,"destruct");n?.call(f,$(t))},createElementOfType:function(t,n,i){let e;const o=g(t,"create");return o!=null?e=$(o.call(f,t,n,i)):(i==null&&(i={}),t!=null&&(i.type=t),e=$(a.createElement(n||"input",i))),e.data("type",t),a.initElement(e),e},cleanArray:function(t,n,i){const e=[];if(!n&&i)return t;for(let o=0;o<t.length;o+=1){let s=t[o];n&&(s===!!s?s=+s:s&&typeof s.trim=="function"&&(s=s.trim())),(i||s!=null&&s.length)&&e.push(s)}return e},isTrue:function(t){return t==="true"||+t==1},isFalse:function(t){return t==="false"||+t==0},readValue:function(t){let n=!a.isFalse(t.data("empty"));const i=!a.isFalse(t.data("trim")),e=t.data("split"),o=g(t,"get");let s;if(o!=null)return o.call(f,t,i,n);if(e!=null){n=a.isTrue(t.data("empty")),s=t.val();const u=s!=null&&s.split(e||",")||[];return a.cleanArray(u,i,n)}if(s=t.val(),i&&s!=null&&typeof s.trim=="function"&&(s=s.trim()),n||s!==void 0&&(s==null||s.length!==0))return s},fillField:function(t,n){const i=g(t,"set");let e=t.data("trim");if(e=e!=="false"&&+e!=0,i!=null)return i.call(f,t,n,e);n instanceof Array&&(n=n.join(t.data("split")||(e?", ":","))),e&&n&&typeof n.trim=="function"?(n=n.trim(),typeof n.toString=="function"&&(n=n.toString())):n!=null?(typeof n.toString=="function"&&(n=n.toString()),e&&(n=n.trim())):n="",n!==void 0&&t.val(n)},initFields:function(t){$("[data-key]",t).each(function(n,i){i=$(i);const e=g(i,"init"),o=i.data("key").split(".");let s=f.get();e?.call(f,i);for(let u=0;u<o.length;u+=1){const c=o[u];c&&s!=null&&(s=s[c])}a.fillField(i,s)})},registerReadyJobs:function(t){return y+=t,y},beforeReadyJobsDecreased:function(t){if(t==null&&(t=1),y>0&&(y-=t,y<=0)){for(let n=0;n<C.length;n+=1)C[n]();C=[]}},whenReady:function(t){y<=0?t():C.push(t)},serializeForm:function(t){const n=t.serializeObject();return t.find('input[type="checkbox"]').each(function(i,e){e=$(e),e.is(":checked")||(n[e.attr("name")]="off")}),t.find("select[multiple]").each(function(i,e){e=$(e),n[e.attr("name")]=JSON.stringify(e.val())}),n},persistSettings:function(t,n,i,e){n!=null&&n._!=null&&typeof n._!="string"&&(n=a.deepClone(n),n._=JSON.stringify(n._)),socket.emit("admin.settings.set",{hash:t,values:n},function(o){i&&(o?h.alert({title:"[[admin/admin:changes-not-saved]]",type:"danger",message:`[[admin/admin/changes-not-saved-message, ${o.message}]]`,timeout:5e3}):h.alert({title:"[[admin/admin:changes-saved]]",type:"success",message:"[[admin/admin:changes-saved-message]]",timeout:2500})),typeof e=="function"&&e(o)})},use:function(t){try{t._=JSON.parse(t._)}catch(n){console.error(n)}f.cfg=t}},f={helper:a,plugins:{},cfg:{},get:function(){return f.cfg!=null&&f.cfg._!==void 0?f.cfg._:f.cfg},registerPlugin:function(t,n){n==null?n=t.types:t.types=n,typeof t.use=="function"&&t.use.call(f);for(let i=0;i<n.length;i+=1){const e=n[i].toLowerCase();f.plugins[e]==null&&(f.plugins[e]=t)}},set:function(t,n,i,e,o){o==null&&(o=!0),a.whenReady(function(){a.use(n),a.initFields(i||"form"),a.persistSettings(t,n,o,e)})},sync:function(t,n,i){socket.emit("admin.settings.get",{hash:t},function(e,o){e?typeof i=="function"&&i(e):a.whenReady(function(){a.use(o),a.initFields(n||"form"),typeof i=="function"&&i()})})},persist:function(t,n,i,e){const o=[],s=$("[data-key]",n||"form").toArray();e==null&&(e=!0);for(let u=0;u<s.length;u+=1){const c=$(s[u]),d=a.readValue(c);let r=f.get();const m=c.data("key").split("."),P=m[m.length-1];if(m.length>1)for(let F=0;F<m.length-1;F+=1){const x=m[F];x&&r!=null&&(r=r[x])}r!=null?d!=null?r[P]=d:delete r[P]:o.push(c.data("key"))}o.length&&h.alert({title:"Attributes Not Saved",message:"'"+o.join(", ")+"' could not be saved. Please contact the plugin-author!",type:"danger",timeout:5e3}),a.persistSettings(t,f.cfg,e,i)},load:function(t,n,i){i=i||function(){};const e=n.attr("data-socket-get");socket.emit(e||"admin.settings.get",{hash:t},function(o,s){if(o)return i(o);$(n).find("select[multiple]").each(function(c,d){const r=$(d).attr("name");if(r&&s.hasOwnProperty(r))try{s[r]=JSON.parse(s[r])}catch(m){console.error(m)}}),ajaxify.data[e?t:"settings"]=s,a.whenReady(function(){$(n).find("[data-sorted-list]").each(function(c,d){g(d,"get").call(f,$(d),t)})}),$(n).deserialize(s),v.fire("action:admin.settingsLoaded"),$(n).on("change","input, select, textarea",function(){app.flags=app.flags||{},app.flags._unsaved=!0});const u=document.getElementById("save");u&&l.e(6411).then(function(){var c=[l(6411)];(function(d){d.bind("ctrl+s",function(r){u.click(),r.preventDefault()})}).apply(null,c)}).catch(l.oe),i(null,s)})},save:function(t,n,i){n=$(n);const e=n.get(0).elements;if(f.check(e)&&n.length){const s=a.serializeForm(n);a.whenReady(function(){const c=n.find("[data-sorted-list]");c.length&&c.each((d,r)=>{g(r,"set").call(f,$(r),s)})});const u=n.attr("data-socket-set");socket.emit(u||"admin.settings.set",{hash:t,values:s},function(c){if(app.flags._unsaved=!1,ajaxify.data[u?t:"settings"]=s,typeof i=="function")i(c);else if(c)h.alert({title:"[[admin/admin:changes-not-saved]]",message:`[[admin/admin:changes-not-saved-message, ${c.message}]]`,type:"error",timeout:5e3});else{const d=document.getElementById("save");d.classList.toggle("saved",!0),setTimeout(()=>{d.classList.toggle("saved",!1)},1500)}})}},check:function(t){const n=i=>{const e=i.target.closest(".form-group");e&&e.classList.add("has-error"),i.target.removeEventListener("invalid",n)};return Array.prototype.map.call(t,i=>{const e=i.closest(".form-group");return e&&e.classList.remove("has-error"),i.addEventListener("invalid",n),i.reportValidity()}).every(Boolean)}};return a.registerReadyJobs(1),Promise.all([l.e(23662),l.e(65285),l.e(19308)]).then(function(){var t=[l(75210),l(474),l(50397),l(71575),l(40054),l(17708),l(46700),l(59175)];(function(){for(let n=0;n<arguments.length;n+=1)f.registerPlugin(arguments[n]);a.beforeReadyJobsDecreased()}).apply(null,t)}).catch(l.oe),f}).apply(S,R),p!==void 0&&(A.exports=p)},10215(A,S,l){"use strict";var R,p;R=[l(70012)],p=(function(v){var h={};return h.init=function(){v.load("persona",$(".persona-settings")),$("#save").on("click",function(){v.save("persona",$(".persona-settings"))})},h}).apply(S,R),p!==void 0&&(A.exports=p)}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.