diff --git a/src/bp-core/admin/bb-settings/settings/build/index.asset.php b/src/bp-core/admin/bb-settings/settings/build/index.asset.php index 4ba61edfa5..6acd7f852d 100644 --- a/src/bp-core/admin/bb-settings/settings/build/index.asset.php +++ b/src/bp-core/admin/bb-settings/settings/build/index.asset.php @@ -1 +1 @@ - array('bb-admin-common', 'react', 'react-dom', 'wp-components', 'wp-date', 'wp-element', 'wp-hooks', 'wp-html-entities', 'wp-i18n'), 'version' => '538e6aaf3cdf76fac85d'); + array('bb-admin-common', 'react', 'react-dom', 'wp-components', 'wp-date', 'wp-element', 'wp-hooks', 'wp-html-entities', 'wp-i18n'), 'version' => '55e43dbe7c0940d61d87'); diff --git a/src/bp-core/admin/bb-settings/settings/build/index.js b/src/bp-core/admin/bb-settings/settings/build/index.js index 6801501c84..7c1af5d07b 100644 --- a/src/bp-core/admin/bb-settings/settings/build/index.js +++ b/src/bp-core/admin/bb-settings/settings/build/index.js @@ -1,4 +1,4 @@ -(()=>{"use strict";var e,t,n,a={1609:e=>{e.exports=window.React},2799:(e,t)=>{var n="function"==typeof Symbol&&Symbol.for,a=n?Symbol.for("react.element"):60103,r=n?Symbol.for("react.portal"):60106,i=n?Symbol.for("react.fragment"):60107,o=n?Symbol.for("react.strict_mode"):60108,s=n?Symbol.for("react.profiler"):60114,l=n?Symbol.for("react.provider"):60109,c=n?Symbol.for("react.context"):60110,d=n?Symbol.for("react.async_mode"):60111,u=n?Symbol.for("react.concurrent_mode"):60111,b=n?Symbol.for("react.forward_ref"):60112,m=n?Symbol.for("react.suspense"):60113,p=n?Symbol.for("react.suspense_list"):60120,f=n?Symbol.for("react.memo"):60115,_=n?Symbol.for("react.lazy"):60116,g=n?Symbol.for("react.block"):60121,v=n?Symbol.for("react.fundamental"):60117,y=n?Symbol.for("react.responder"):60118,h=n?Symbol.for("react.scope"):60119;function E(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case a:switch(e=e.type){case d:case u:case i:case s:case o:case m:return e;default:switch(e=e&&e.$$typeof){case c:case b:case _:case f:case l:return e;default:return t}}case r:return t}}}function w(e){return E(e)===u}t.AsyncMode=d,t.ConcurrentMode=u,t.ContextConsumer=c,t.ContextProvider=l,t.Element=a,t.ForwardRef=b,t.Fragment=i,t.Lazy=_,t.Memo=f,t.Portal=r,t.Profiler=s,t.StrictMode=o,t.Suspense=m,t.isAsyncMode=function(e){return w(e)||E(e)===d},t.isConcurrentMode=w,t.isContextConsumer=function(e){return E(e)===c},t.isContextProvider=function(e){return E(e)===l},t.isElement=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===a},t.isForwardRef=function(e){return E(e)===b},t.isFragment=function(e){return E(e)===i},t.isLazy=function(e){return E(e)===_},t.isMemo=function(e){return E(e)===f},t.isPortal=function(e){return E(e)===r},t.isProfiler=function(e){return E(e)===s},t.isStrictMode=function(e){return E(e)===o},t.isSuspense=function(e){return E(e)===m},t.isValidElementType=function(e){return"string"==typeof e||"function"==typeof e||e===i||e===u||e===s||e===o||e===m||e===p||"object"==typeof e&&null!==e&&(e.$$typeof===_||e.$$typeof===f||e.$$typeof===l||e.$$typeof===c||e.$$typeof===b||e.$$typeof===v||e.$$typeof===y||e.$$typeof===h||e.$$typeof===g)},t.typeOf=E},3957:(e,t,n)=>{function a(e){return e.toString().replace(/\B(?=(\d{3})+(?!\d))/g,",")}function r(e){return e.toLowerCase().replace(/[^\w\u0080-\uFFFF\s-]/g,"").replace(/[\s]+/g,"-").replace(/-+/g,"-").replace(/^-|-$/g,"")}function i(e){var t=[],n=[],a=null,r=function(){n.length>0&&(t.push({type:"row",fields:n}),n=[],a=null)},i={half:2,third:3};return e.forEach((function(e){if("half"===e.layout||"third"===e.layout){a&&a!==e.layout&&r();var o=i[e.layout]||2;n.length>=o&&r(),n.push(e),a=e.layout}else r(),t.push({type:"single",field:e})})),r(),t}function o(e,t){if(!e.conditional)return!0;if("disable"===e.conditional.action)return!0;var n=t[e.conditional.field],a=e.conditional.value;return!0===a||!1===a?(!!n&&"0"!==n&&0!==n)===a:String(n)===String(a)}function s(e,t){if(!e.conditional||"disable"!==e.conditional.action)return!1;if(Array.isArray(e.conditional.fields))return!e.conditional.fields.some((function(e){return!(null==(n=t[e])||""===n||Array.isArray(n)&&0===n.length);var n}));var n=t[e.conditional.field],a=e.conditional.value;return!(!0===a||!1===a?(!!n&&"0"!==n&&0!==n)===a:String(n)===String(a))}function l(e,t){return e.filter((function(e){return e.visible&&o(e,t)}))}function c(e,t,n){var a=n||[],r=t&&"row"===t.type;if("row"===e.type)return r;var i=e.field?e.field.id:"";return"richtext"===(e.field?e.field.type:"")||-1!==a.indexOf(i)||!(r&&t.fields[0]&&t.fields[0].conditional&&t.fields[0].conditional.field===i)&&r}function d(e){var t=[],n=null;return e.forEach((function(e){var a=e.field_group?String(e.field_group):"",r=e.field_group_label?String(e.field_group_label):"";n&&n.group===a||(n={group:a,label:r,fields:[]},t.push(n)),""===n.label&&""!==r&&(n.label=r),n.fields.push(e)})),t}function u(e,t,n){var a={};return e.forEach((function(e){if(!e.readonly){var r=t[e.id];if("richtext"===e.type&&window.tinymce){var i=window.tinymce.get("bb-admin-edit-"+e.id+"-"+n);i&&(r=i.getContent())}var o=null!=r?r:"";a[e.id]=o,a["registered_field_"+e.id]=o}})),a}n.d(t,{BF:()=>r,Vb:()=>i,Xx:()=>u,ZV:()=>a,_t:()=>l,i1:()=>d,lc:()=>c,rl:()=>o,tM:()=>s})},4146:(e,t,n)=>{var a=n(4363),r={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},i={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},o={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},s={};function l(e){return a.isMemo(e)?o:s[e.$$typeof]||r}s[a.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},s[a.Memo]=o;var c=Object.defineProperty,d=Object.getOwnPropertyNames,u=Object.getOwnPropertySymbols,b=Object.getOwnPropertyDescriptor,m=Object.getPrototypeOf,p=Object.prototype;e.exports=function e(t,n,a){if("string"!=typeof n){if(p){var r=m(n);r&&r!==p&&e(t,r,a)}var o=d(n);u&&(o=o.concat(u(n)));for(var s=l(t),f=l(n),_=0;_{e.exports=n(2799)},4516:(e,t,n)=>{n.d(t,{C:()=>r});var a=n(1609);function r({name:e}){return(0,a.createElement)("span",{className:`bb-icons-rl-${e}`})}},4737:(e,t,n)=>{e.exports=n(8989)},4836:e=>{e.exports=window.bbAdminCommon},6045:(e,t,n)=>{n.d(t,{Pl:()=>a.safeUrl,m_:()=>a.sanitizeCustomColumns,pn:()=>a.sanitizeHtml});var a=n(4836)},6087:e=>{e.exports=window.wp.element},6427:e=>{e.exports=window.wp.components},6904:(e,t,n)=>{n.d(t,{A:()=>s,y:()=>l});var a=n(1609),r=n(6087),i=n(7723),o=n(6427);function s(e,t,n){(0,r.useEffect)((function(){if(e&&"success"===e.status){var a=setTimeout((function(){t(null)}),n||3e3);return function(){clearTimeout(a)}}}),[e])}const l=({status:e,message:t,onDismiss:n,showIcon:r=!0})=>(0,a.createElement)("div",{className:`bb-toast bb-toast--${e}`,role:"error"===e?"alert":"status","aria-live":"error"===e?"assertive":"polite"},r&&(0,a.createElement)("div",{className:"bb-toast__icon"},(()=>{switch(e){case"saving":return(0,a.createElement)(o.Spinner,null);case"success":return(0,a.createElement)("i",{className:"bb-icons-rl-fill bb-icons-rl-check-circle"});case"error":return(0,a.createElement)("i",{className:"bb-icons-rl-warning-circle"});default:return null}})()),(0,a.createElement)("div",{className:"bb-toast__message"},t),"error"===e&&n&&(0,a.createElement)(o.Button,{onClick:n,className:"bb-toast__dismiss","aria-label":(0,i.__)("Dismiss","buddyboss"),icon:(0,a.createElement)("i",{className:"bb-icons-rl-x"})}))},7009:(e,t,n)=>{n.d(t,{N:()=>i});var a=n(1609),r=n(7723);const i=({onClick:e,contentId:t})=>(0,a.createElement)("button",{className:"help-icon",onClick:()=>{e&&e(t)},"aria-label":(0,r.__)("Help","buddyboss")},(0,a.createElement)("i",{className:"bb-icons-rl-question"}))},7723:e=>{e.exports=window.wp.i18n},7941:(e,t,n)=>{n.d(t,{C:()=>s});var a=n(1609),r=n(6427),i=n(7723),o=n(6045);function s({isOpen:e,message:t,onConfirm:n,onCancel:s,title:l,confirmLabel:c,cancelLabel:d,isDestructive:u,messageIsHtml:b}){return e?(0,a.createElement)(r.Modal,{title:l||(0,i.__)("Are you sure?","buddyboss"),onRequestClose:s,className:"bb-confirm-toggle-modal bb-admin-settings-modal",shouldCloseOnClickOutside:!1},(0,a.createElement)("div",{className:"bb-admin-settings-modal__body bb-confirm-toggle-modal__body"},b?(0,a.createElement)("div",{className:"bb-confirm-toggle-modal__html-message",dangerouslySetInnerHTML:{__html:(0,o.pn)(t)}}):(0,a.createElement)("p",null,t)),(0,a.createElement)("div",{className:"bb-admin-settings-modal__footer bb-confirm-toggle-modal__footer"},(0,a.createElement)(r.Button,{variant:"secondary",onClick:s},d||(0,i.__)("Cancel","buddyboss")),(0,a.createElement)(r.Button,{variant:"primary",isDestructive:!!u,onClick:n},c||(0,i.__)("OK","buddyboss")))):null}},8136:(e,t,n)=>{function a(e,t,n,r){if(Array.isArray(r)||(r=[]),null!=n)if(n instanceof Blob)e.append(t,n);else if(Array.isArray(n)){if(-1!==r.indexOf(n))return;r.push(n),n.forEach((function(n,i){a(e,t+"["+i+"]",n,r)}))}else if("object"==typeof n){if(-1!==r.indexOf(n))return;r.push(n),Object.keys(n).forEach((function(i){a(e,t+"["+i+"]",n[i],r)}))}else"boolean"==typeof n?e.append(t,n?"1":"0"):e.append(t,n)}function r(e,t,n){t=t||{},n=n||{};var r=window.bbAdminData&&window.bbAdminData.ajaxUrl||"/wp-admin/admin-ajax.php",i=window.bbAdminData&&window.bbAdminData.ajaxNonce||"",o=new FormData;return o.append("action",e),o.append("nonce",i),Object.keys(t).forEach((function(e){a(o,e,t[e])})),fetch(r,{method:"POST",credentials:"same-origin",body:o,signal:n.signal}).then((function(e){return e.ok?e.json():e.json().then((function(t){if(t&&t.data&&t.data.message)throw new Error(t.data.message);throw new Error("HTTP "+e.status+": "+e.statusText)})).catch((function(t){if(!(t instanceof SyntaxError))throw t;throw new Error("HTTP "+e.status+": "+e.statusText)}))}))}function i(){return r("bb_admin_get_features")}n.d(t,{$X:()=>re,A6:()=>Be,AV:()=>Z,B9:()=>H,Bf:()=>be,Bu:()=>Te,Bz:()=>E,CI:()=>O,Cc:()=>B,DE:()=>F,Dm:()=>p,Dx:()=>d,EF:()=>j,F$:()=>x,F3:()=>me,G:()=>Ce,HF:()=>le,HH:()=>q,Hk:()=>_,JK:()=>m,Kl:()=>l,N9:()=>ue,NI:()=>ne,Nk:()=>w,OD:()=>D,Og:()=>ye,P1:()=>u,P5:()=>Ie,PS:()=>ke,Pu:()=>T,RM:()=>N,Rb:()=>pe,SC:()=>S,SQ:()=>de,SR:()=>Oe,Tf:()=>U,U0:()=>$,UG:()=>De,Ug:()=>k,VM:()=>we,WT:()=>C,Wv:()=>fe,Wx:()=>h,YG:()=>ee,ZU:()=>r,ZY:()=>g,Zi:()=>I,aC:()=>ce,ao:()=>f,bd:()=>_e,bn:()=>b,c9:()=>Ae,dU:()=>X,eL:()=>K,f:()=>v,fC:()=>J,gg:()=>xe,gw:()=>A,i:()=>i,iQ:()=>he,jD:()=>V,kn:()=>M,l5:()=>W,lK:()=>oe,my:()=>ie,nH:()=>Y,oL:()=>z,pB:()=>se,rI:()=>ae,ri:()=>Ee,se:()=>R,tb:()=>Pe,tf:()=>te,tq:()=>P,uh:()=>Re,uj:()=>ge,v2:()=>Ne,wj:()=>y,x$:()=>c,xg:()=>L,xs:()=>Se,y1:()=>G,yk:()=>Q,zO:()=>Me});var o=null,s=null;function l(){return o?Promise.resolve(o):s||(s=i().then((function(e){return e.success&&e.data?o=e.data:(s=null,[])})).catch((function(e){throw s=null,e})))}function c(){o=null,s=null}function d(e,t){o&&Array.isArray(o)&&(o=o.map((function(n){return n.id===e?Object.assign({},n,t):n})))}function u(e,t,n){return r("bb_admin_toggle_feature",{feature_id:e,status:t?"active":"inactive"},n||{})}function b(e,t){return r("bb_admin_get_platform_settings",{options:e},t||{})}function m(e,t){return r("bb_admin_save_platform_setting",{option_name:e,option_value:t})}function p(e,t){return r("bb_admin_get_group_types",e||{},t)}function f(e){return r("bb_admin_create_group_type",e)}function _(e,t){return r("bb_admin_update_group_type",Object.assign({type_id:e},t))}function g(e,t){return r("bb_admin_delete_group_type",{type_id:e},t)}function v(e,t){return r("bb_admin_get_groups",e,t)}function y(e){return r("bb_admin_create_group",e)}function h(e,t){return r("bb_admin_get_group",{group_id:e},t)}function E(e,t){return r("bb_admin_save_group",e,t)}function w(e,t,n){return r("bb_admin_get_group_members",Object.assign({group_id:e},t),n)}function N(e){return r("bb_admin_update_group_member",e)}function C(e,t){return r("bb_admin_get_member_types",e||{},t)}function x(e){return r("bb_admin_create_member_type",e)}function k(e,t){return r("bb_admin_update_member_type",Object.assign({},t,{type_id:e}))}function S(e,t){return r("bb_admin_delete_member_type",{type_id:e},t)}function A(e,t){return r("bb_admin_get_group_topics",{group_id:e},t||{})}function D(e,t,n){var a={group_ids:e.join(","),do_action:t};return n&&Object.keys(n).forEach((function(e){a[e]=n[e]})),r("bb_admin_group_bulk_action",a)}function I(e,t){return r("bb_admin_get_forums",e,t)}function O(e,t){return r("bb_admin_get_forum",{forum_id:e},t)}function R(e){return r("bb_admin_create_forum",e)}function P(e,t){return r("bb_admin_save_forum",e,t)}function M(e,t,n){var a={forum_ids:e.join(","),do_action:t};return n&&Object.keys(n).forEach((function(e){a[e]=n[e]})),r("bb_admin_forum_bulk_action",a)}function B(e,t){return r("bb_admin_get_discussions",e,t)}function T(e,t){return r("bb_admin_get_discussion",{topic_id:e},t)}function L(e){return r("bb_admin_create_discussion",e)}function j(e,t){return r("bb_admin_save_discussion",e,t)}function F(e,t,n){var a={topic_ids:e.join(","),do_action:t};return n&&Object.keys(n).forEach((function(e){a[e]=n[e]})),r("bb_admin_discussion_bulk_action",a)}function U(e,t){return r("bb_admin_topic_tag_autocomplete",{search:e},t)}function H(e,t){return r("bb_admin_get_topic_tags",e||{},t||{})}function G(e,t){return r("bb_admin_get_topic_tag",{term_id:e},t||{})}function z(e){return r("bb_admin_create_topic_tag",e)}function V(e,t){return r("bb_admin_save_topic_tag",e,t||{})}function W(e){return r("bb_admin_delete_topic_tag",{term_id:e})}function $(e,t){return r("bb_admin_topic_tag_bulk_action",{term_ids:e.join(","),do_action:t})}function q(e,t){return r("bb_admin_get_replies",e||{},t||{})}function Y(e,t){return r("bb_admin_get_reply",{reply_id:e},t||{})}function J(e){return r("bb_admin_create_reply",e)}function Z(e,t){return r("bb_admin_save_reply",e,t||{})}function K(e){return r("bb_admin_delete_reply",{reply_id:e})}function X(e,t,n){var a={reply_ids:e.join(","),do_action:t};return n&&Object.keys(n).forEach((function(e){a[e]=n[e]})),r("bb_admin_reply_bulk_action",a)}function Q(e){return r("bb_admin_get_profile_field_groups",{},e||{})}function ee(e){return r("bb_admin_create_field_group",e)}function te(e){return r("bb_admin_update_field_group",e)}function ne(e){return r("bb_admin_delete_field_group",{group_id:e})}function ae(e){return r("bb_admin_save_profile_field",e)}function re(e,t){return r("bb_admin_delete_profile_field",{field_id:e},t)}function ie(e,t){return r("bb_admin_reorder_profile_fields",e,t)}function oe(e){return r("bb_admin_get_profile_search_fields",{},e||{})}function se(e){return r("bb_admin_save_profile_search_field",e)}function le(e,t){return r("bb_admin_delete_profile_search_field",e,t)}function ce(e,t){return r("bb_admin_reorder_profile_search_fields",e,t||{})}function de(e,t){return r("bb_admin_get_email_templates",e,t)}function ue(e,t){return r("bb_admin_email_template_bulk_action",{email_ids:e.join(","),do_action:t})}function be(e,t){return r("bb_admin_get_invites",e,t)}function me(e,t){return r("bb_admin_invites_bulk_action",{invite_ids:e.join(","),do_action:t})}function pe(e,t){return r("bb_admin_get_email_template",e,t)}function fe(e,t){return r("bb_admin_save_email_template",e,t)}function _e(e){return r("bb_admin_delete_email_templates",{email_ids:e.join(",")})}function ge(e){return r("bb_admin_bulk_edit_email_templates",e)}var ve=null;function ye(e){return ve?Promise.resolve({success:!0,data:ve}):r("bb_admin_get_email_situations",{},e).then((function(e){return e.success&&e.data&&(ve=e.data),e}))}function he(e){return r("bb_admin_get_email_meta_keys",{},e)}function Ee(e){return r("bb_admin_get_reporting_categories",{},e)}function we(e){return r("bb_admin_create_reporting_category",e)}function Ne(e,t){return r("bb_admin_update_reporting_category",Object.assign({term_id:e},t))}function Ce(e){return r("bb_admin_delete_reporting_category",{term_id:e})}function xe(e,t){return r("bb_admin_get_flagged_members",e||{},t)}function ke(e,t,n){return r("bb_admin_get_member_report",{user_id:e,moderation_id:t},n||{})}function Se(e){return r("bb_admin_suspend_member",{user_id:e})}function Ae(e){return r("bb_admin_unsuspend_member",{user_id:e})}function De(e,t){return r("bb_admin_flagged_members_bulk_action",{bulk_action:e,user_ids:t})}function Ie(e,t){return r("bb_admin_get_reported_content",e||{},t)}function Oe(e,t){return r("bb_admin_get_content_report",{moderation_id:e},t||{})}function Re(e,t){return r("bb_admin_hide_content",{item_id:e,item_type:t})}function Pe(e,t){return r("bb_admin_unhide_content",{item_id:e,item_type:t})}function Me(e){return r("bb_admin_suspend_content_owner",{user_id:e})}function Be(e){return r("bb_admin_unsuspend_content_owner",{user_id:e})}function Te(e,t){return r("bb_admin_reported_content_bulk_action",{bulk_action:e,ids:t})}},8443:e=>{e.exports=window.wp.date},8537:e=>{e.exports=window.wp.htmlEntities},8989:(e,t)=>{var n=60103,a=60106,r=60107,i=60108,o=60114,s=60109,l=60110,c=60112,d=60113,u=60120,b=60115,m=60116;if("function"==typeof Symbol&&Symbol.for){var p=Symbol.for;n=p("react.element"),a=p("react.portal"),r=p("react.fragment"),i=p("react.strict_mode"),o=p("react.profiler"),s=p("react.provider"),l=p("react.context"),c=p("react.forward_ref"),d=p("react.suspense"),u=p("react.suspense_list"),b=p("react.memo"),m=p("react.lazy"),p("react.block"),p("react.server.block"),p("react.fundamental"),p("react.debug_trace_mode"),p("react.legacy_hidden")}t.isContextConsumer=function(e){return function(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case n:switch(e=e.type){case r:case o:case i:case d:case u:return e;default:switch(e=e&&e.$$typeof){case l:case c:case m:case b:case s:return e;default:return t}}case a:return t}}}(e)===l}},9021:(e,t,n)=>{n.d(t,{x:()=>d});var a=n(1609),r=n(6087),i=n(7723),o=n(8136),s=n(6427),l=300,c=0;function d({id:e,value:t,onChange:n,asyncAction:d,asyncExtraParams:u,placeholder:b,disabled:m,initialLabel:p,staticOptions:f}){var _=(0,r.useMemo)((function(){return Array.isArray(f)?f:[]}),[f]),g=(0,r.useCallback)((function(e){for(var t=String(e||""),n=0;n<_.length;n++)if(String(_[n].value)===t)return _[n];return null}),[_]),v=g(t),y=(0,r.useState)((function(){return v?v.label:p||""})),h=y[0],E=y[1],w=(0,r.useState)(-1),N=w[0],C=w[1],x=(0,r.useRef)(null);if(null===x.current){var k=++c;x.current={listbox:"bb-async-select__listbox-"+k,option:function(e){return"bb-async-select__option-"+k+"-"+e}}}var S=(0,r.useState)(""),A=S[0],D=S[1],I=(0,r.useState)(!1),O=I[0],R=I[1],P=(0,r.useState)([]),M=P[0],B=P[1],T=(0,r.useState)(!1),L=T[0],j=T[1],F=(0,r.useState)(1),U=F[0],H=F[1],G=(0,r.useState)(!1),z=G[0],V=G[1],W=(0,r.useState)(!1),$=W[0],q=W[1],Y=(0,r.useRef)(null),J=(0,r.useRef)(null),Z=(0,r.useRef)(null),K=(0,r.useRef)(null),X=(0,r.useRef)(null),Q=(0,r.useCallback)((function(e,t,n){Y.current&&Y.current.abort(),Y.current=new AbortController,n?q(!0):(V(!0),n||B([]));var a={term:e,page:t};u&&Object.keys(u).forEach((function(e){a[e]=u[e]})),(0,o.ZU)(d,a,{signal:Y.current.signal}).then((function(e){if(e.success){var t=e.data;B(n?function(e){return e.concat(t.results||[])}:t.results||[]),j(!!t.has_more)}})).catch((function(e){e&&"AbortError"===e.name||window&&window.console&&"function"==typeof window.console.warn&&window.console.warn("AsyncSelectField fetchResults failed:",e)})).finally((function(){V(!1),q(!1)}))}),[d,u]),ee=(0,r.useRef)({value:String(t||""),label:p||""});(0,r.useEffect)((function(){var e=String(t||""),n=g(t);if(n)return E(n.label),void(ee.current={value:e,label:n.label});if(""===e||"0"===e)return E(""),void(ee.current={value:"",label:""});var a=ee.current;if(p&&p!==a.label&&e!==a.value)return E(p),void(ee.current={value:e,label:p});if(!h||e!==a.value){var r=new AbortController;return(0,o.ZU)(d,{selected_id:t,page:1,term:""},{signal:r.signal}).then((function(t){if(!r.signal.aborted&&t.success&&t.data.results&&t.data.results.length){var n=t.data.results[0].label;E(n),ee.current={value:e,label:n}}})).catch((function(e){e&&"AbortError"===e.name||window&&window.console&&"function"==typeof window.console.warn&&window.console.warn("AsyncSelectField resolve failed:",e)})),function(){r.abort()}}}),[t,p,g]),(0,r.useEffect)((function(){function e(e){Z.current&&!Z.current.contains(e.target)&&(R(!1),D(""))}return document.addEventListener("mousedown",e),function(){document.removeEventListener("mousedown",e)}}),[]);var te=(0,r.useMemo)((function(){if(!_.length)return M;var e=(A||"").trim().toLowerCase(),t=""===e?_:_.filter((function(t){return-1!==String(t.label||"").toLowerCase().indexOf(e)}));if(!t.length)return M;for(var n=Object.create(null),a=0;a=te.length&&C(te.length>0?te.length-1:-1):C(-1)}),[te,O]),(0,r.useEffect)((function(){O&&X.current&&X.current.focus()}),[O]),(0,r.useEffect)((function(){return function(){Y.current&&Y.current.abort(),J.current&&clearTimeout(J.current)}}),[]);var ae=h||b||(0,i.__)("Select…","buddyboss");return(0,a.createElement)("div",{className:"bb-async-select",ref:Z},(0,a.createElement)("div",{className:"bb-async-select__trigger-wrapper"},(0,a.createElement)("button",{type:"button",ref:K,id:e||void 0,className:"bb-async-select__trigger"+(O?" is-open":"")+(h?"":" is-placeholder"),disabled:m,"aria-haspopup":"listbox","aria-expanded":O,"aria-controls":x.current.listbox,onClick:function(){m||(O?R(!1):(R(!0),D(""),H(1),Q("",1,!1)))},onKeyDown:function(e){m||O||"ArrowDown"!==e.key&&"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),R(!0),D(""),H(1),Q("",1,!1))}},(0,a.createElement)("span",{className:"bb-async-select__trigger-label"},ae),(0,a.createElement)("i",{className:"bb-async-select__trigger-chevron bb-icons-rl bb-icons-rl-caret-down","aria-hidden":"true"}))),O&&(0,a.createElement)("div",{className:"bb-async-select__dropdown"},(0,a.createElement)("div",{className:"bb-async-select__search-wrapper"},(0,a.createElement)("i",{className:"bb-async-select__search-icon bb-icons-rl bb-icons-rl-magnifying-glass","aria-hidden":"true"}),(0,a.createElement)("input",{ref:X,type:"search",className:"bb-async-select__search-input",value:A,onChange:function(e){var t=e.target.value;D(t),H(1),J.current&&clearTimeout(J.current),J.current=setTimeout((function(){Q(t,1,!1)}),l)},onKeyDown:function(e){if(!m)return"ArrowDown"===e.key?(e.preventDefault(),O?void(te.length>0&&C((function(e){return e+10&&C((function(e){return e>0?e-1:0})))):"Home"===e.key&&O&&te.length>0?(e.preventDefault(),void C(0)):"End"===e.key&&O&&te.length>0?(e.preventDefault(),void C(te.length-1)):void("Enter"!==e.key?"Escape"===e.key&&O&&(e.preventDefault(),R(!1),D(""),C(-1),K.current&&K.current.focus()):O&&N>=0&&N=0&&N0&&(0,a.createElement)("ul",{className:"bb-async-select__list",role:"listbox",id:x.current.listbox},te.map((function(e,n){var r=e.value===String(t),i=n===N;return(0,a.createElement)("li",{key:e.value,id:x.current.option(n),role:"option","aria-selected":r,className:"bb-async-select__option"+(r?" is-selected":"")+(i?" is-active":"")},(0,a.createElement)("button",{type:"button",tabIndex:-1,onMouseDown:function(t){t.preventDefault(),ne(e)},onMouseEnter:function(){C(n)}},e.label))}))),!z&&L&&(0,a.createElement)("div",{className:"bb-async-select__load-more"},(0,a.createElement)("button",{type:"button",className:"bb-async-select__load-more-btn",onClick:function(){var e=U+1;H(e),Q(A,e,!0)},disabled:$},$?(0,i.__)("Loading…","buddyboss"):(0,i.__)("Load more","buddyboss")))))}},9236:(e,t,n)=>{n.d(t,{JY:()=>cr,sx:()=>Lr,gL:()=>Hr});var a=n(1609),r=n.n(a);function i(e,t){return i=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},i(e,t)}function o(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,i(e,t)}function s(){return s=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0;a--){var r=t[a](e);if(r)return r}return function(t,a){throw new Error("Invalid value of type "+typeof e+" for "+n+" argument when connecting component "+a.wrappedComponentName+".")}}function ne(e,t){return e===t}function ae(e){var t=void 0===e?{}:e,n=t.connectHOC,a=void 0===n?U:n,r=t.mapStateToPropsFactories,i=void 0===r?q:r,o=t.mapDispatchToPropsFactories,l=void 0===o?$:o,c=t.mergePropsFactories,d=void 0===c?J:c,u=t.selectorFactory,b=void 0===u?Q:u;return function(e,t,n,r){void 0===r&&(r={});var o=r,c=o.pure,u=void 0===c||c,m=o.areStatesEqual,p=void 0===m?ne:m,f=o.areOwnPropsEqual,_=void 0===f?G:f,g=o.areStatePropsEqual,v=void 0===g?G:g,y=o.areMergedPropsEqual,h=void 0===y?G:y,E=S(o,ee),w=te(e,i,"mapStateToProps"),N=te(t,l,"mapDispatchToProps"),C=te(n,d,"mergeProps");return a(b,s({methodName:"connect",getDisplayName:function(e){return"Connect("+e+")"},shouldHandleStateChanges:Boolean(e),initMapStateToProps:w,initMapDispatchToProps:N,initMergeProps:C,pure:u,areStatesEqual:p,areOwnPropsEqual:_,areStatePropsEqual:v,areMergedPropsEqual:h},E))}}const re=ae(),ie=window.ReactDOM;var oe,se=n.n(ie);function le(e,t){var n=(0,a.useState)((function(){return{inputs:t,result:e()}}))[0],r=(0,a.useRef)(!0),i=(0,a.useRef)(n),o=r.current||Boolean(t&&i.current.inputs&&function(e,t){if(e.length!==t.length)return!1;for(var n=0;n");return t.callbacks},t.setCallbacks=function(e){t.callbacks=e},t}o(t,e);var n=t.prototype;return n.componentDidMount=function(){this.unbind=Se(window,[{eventName:"error",fn:this.onWindowError}])},n.componentDidCatch=function(e){if(!(e instanceof Ie))throw e;this.setState({})},n.componentWillUnmount=function(){this.unbind()},n.render=function(){return this.props.children(this.setCallbacks)},t}(r().Component),Pe=function(e){return e+1},Me=function(e,t){var n=e.droppableId===t.droppableId,a=Pe(e.index),r=Pe(t.index);return n?"\n You have moved the item from position "+a+"\n to position "+r+"\n ":"\n You have moved the item from position "+a+"\n in list "+e.droppableId+"\n to list "+t.droppableId+"\n in position "+r+"\n "},Be=function(e,t,n){return t.droppableId===n.droppableId?"\n The item "+e+"\n has been combined with "+n.draggableId:"\n The item "+e+"\n in list "+t.droppableId+"\n has been combined with "+n.draggableId+"\n in list "+n.droppableId+"\n "},Te=function(e){return"\n The item has returned to its starting position\n of "+Pe(e.index)+"\n"},Le={dragHandleUsageInstructions:"\n Press space bar to start a drag.\n When dragging you can use the arrow keys to move the item around and escape to cancel.\n Some screen readers may require you to be in focus mode or to use your pass through key\n",onDragStart:function(e){return"\n You have lifted an item in position "+Pe(e.source.index)+"\n"},onDragUpdate:function(e){var t=e.destination;if(t)return Me(e.source,t);var n=e.combine;return n?Be(e.draggableId,e.source,n):"You are over an area that cannot be dropped on"},onDragEnd:function(e){if("CANCEL"===e.reason)return"\n Movement cancelled.\n "+Te(e.source)+"\n ";var t=e.destination,n=e.combine;return t?"\n You have dropped the item.\n "+Me(e.source,t)+"\n ":n?"\n You have dropped the item.\n "+Be(e.draggableId,e.source,n)+"\n ":"\n The item has been dropped while not over a drop area.\n "+Te(e.source)+"\n "}},je={x:0,y:0},Fe=function(e,t){return{x:e.x+t.x,y:e.y+t.y}},Ue=function(e,t){return{x:e.x-t.x,y:e.y-t.y}},He=function(e,t){return e.x===t.x&&e.y===t.y},Ge=function(e){return{x:0!==e.x?-e.x:0,y:0!==e.y?-e.y:0}},ze=function(e,t,n){var a;return void 0===n&&(n=0),(a={})[e]=t,a["x"===e?"y":"x"]=n,a},Ve=function(e,t){return Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2))},We=function(e,t){return Math.min.apply(Math,t.map((function(t){return Ve(e,t)})))},$e=function(e){return function(t){return{x:e(t.x),y:e(t.y)}}},qe=function(e,t){return{top:e.top+t.y,left:e.left+t.x,bottom:e.bottom+t.y,right:e.right+t.x}},Ye=function(e){return[{x:e.left,y:e.top},{x:e.right,y:e.top},{x:e.left,y:e.bottom},{x:e.right,y:e.bottom}]},Je=function(e,t){return t&&t.shouldClipSubject?function(e,t){var n=ue({top:Math.max(t.top,e.top),right:Math.min(t.right,e.right),bottom:Math.min(t.bottom,e.bottom),left:Math.max(t.left,e.left)});return n.width<=0||n.height<=0?null:n}(t.pageMarginBox,e):ue(e)},Ze=function(e){var t=e.page,n=e.withPlaceholder,a=e.axis,r=e.frame,i=function(e,t){return t?qe(e,t.scroll.diff.displacement):e}(t.marginBox,r),o=function(e,t,n){var a;return n&&n.increasedBy?s({},e,((a={})[t.end]=e[t.end]+n.increasedBy[t.line],a)):e}(i,a,n);return{page:t,withPlaceholder:n,active:Je(o,r)}},Ke=function(e,t){e.frame||Oe(!1);var n=e.frame,a=Ue(t,n.scroll.initial),r=Ge(a),i=s({},n,{scroll:{initial:n.scroll.initial,current:t,diff:{value:a,displacement:r},max:n.scroll.max}});return s({},e,{frame:i,subject:Ze({page:e.subject.page,withPlaceholder:e.subject.withPlaceholder,axis:e.axis,frame:i})})};function Xe(e){return Object.values?Object.values(e):Object.keys(e).map((function(t){return e[t]}))}function Qe(e,t){if(e.findIndex)return e.findIndex(t);for(var n=0;ne.bottom,s=a.lefte.right;return!(!o||!s)||o&&i||s&&r}},_t=function(e){var t=pt(e.top,e.bottom),n=pt(e.left,e.right);return function(e){return t(e.top)&&t(e.bottom)&&n(e.left)&&n(e.right)}},gt={direction:"vertical",line:"y",crossAxisLine:"x",start:"top",end:"bottom",size:"height",crossAxisStart:"left",crossAxisEnd:"right",crossAxisSize:"width"},vt={direction:"horizontal",line:"x",crossAxisLine:"y",start:"left",end:"right",size:"width",crossAxisStart:"top",crossAxisEnd:"bottom",crossAxisSize:"height"},yt=function(e){var t=e.target,n=e.destination,a=e.viewport,r=e.withDroppableDisplacement,i=e.isVisibleThroughFrameFn,o=r?function(e,t){var n=t.frame?t.frame.scroll.diff.displacement:je;return qe(e,n)}(t,n):t;return function(e,t,n){return!!t.subject.active&&n(t.subject.active)(e)}(o,n,i)&&function(e,t,n){return n(t)(e)}(o,a,i)},ht=function(e){return yt(s({},e,{isVisibleThroughFrameFn:_t}))};function Et(e){var t=e.afterDragging,n=e.destination,a=e.displacedBy,r=e.viewport,i=e.forceShouldAnimate,o=e.last;return t.reduce((function(e,t){var l=function(e,t){var n=e.page.marginBox,a={top:t.point.y,right:0,bottom:0,left:t.point.x};return ue(be(n,a))}(t,a),c=t.descriptor.id;if(e.all.push(c),!yt(s({},{target:l,destination:n,viewport:r,withDroppableDisplacement:!0},{isVisibleThroughFrameFn:ft})))return e.invisible[t.descriptor.id]=!0,e;var d=function(e,t,n){if("boolean"==typeof n)return n;if(!t)return!0;var a=t.invisible,r=t.visible;if(a[e])return!1;var i=r[e];return!i||i.shouldAnimate}(c,o,i),u={draggableId:c,shouldAnimate:d};return e.visible[c]=u,e}),{all:[],visible:{},invisible:{}})}function wt(e){var t=e.insideDestination,n=e.inHomeList,a=e.displacedBy,r=e.destination,i=function(e,t){if(!e.length)return 0;var n=e[e.length-1].descriptor.index;return t.inHomeList?n:n+1}(t,{inHomeList:n});return{displaced:bt,displacedBy:a,at:{type:"REORDER",destination:{droppableId:r.descriptor.id,index:i}}}}function Nt(e){var t=e.draggable,n=e.insideDestination,a=e.destination,r=e.viewport,i=e.displacedBy,o=e.last,s=e.index,l=e.forceShouldAnimate,c=dt(t,a);if(null==s)return wt({insideDestination:n,inHomeList:c,displacedBy:i,destination:a});var d=et(n,(function(e){return e.descriptor.index===s}));if(!d)return wt({insideDestination:n,inHomeList:c,displacedBy:i,destination:a});var u=ct(t,n),b=n.indexOf(d);return{displaced:Et({afterDragging:u.slice(b),destination:a,displacedBy:i,last:o,viewport:r.frame,forceShouldAnimate:l}),displacedBy:i,at:{type:"REORDER",destination:{droppableId:a.descriptor.id,index:s}}}}function Ct(e,t){return Boolean(t.effected[e])}var xt=function(e,t){return t.margin[e.start]+t.borderBox[e.size]/2},kt=function(e,t,n){return t[e.crossAxisStart]+n.margin[e.crossAxisStart]+n.borderBox[e.crossAxisSize]/2},St=function(e){var t=e.axis,n=e.moveRelativeTo,a=e.isMoving;return ze(t.line,n.marginBox[t.end]+xt(t,a),kt(t,n.marginBox,a))},At=function(e){var t=e.axis,n=e.moveRelativeTo,a=e.isMoving;return ze(t.line,n.marginBox[t.start]-function(e,t){return t.margin[e.end]+t.borderBox[e.size]/2}(t,a),kt(t,n.marginBox,a))},Dt=function(e,t){var n=e.frame;return n?Fe(t,n.scroll.diff.displacement):t},It=function(e){var t=function(e){var t=e.impact,n=e.draggable,a=e.droppable,r=e.draggables,i=e.afterCritical,o=n.page.borderBox.center,s=t.at;return a&&s?"REORDER"===s.type?function(e){var t=e.impact,n=e.draggable,a=e.draggables,r=e.droppable,i=e.afterCritical,o=ot(r.descriptor.id,a),s=n.page,l=r.axis;if(!o.length)return function(e){var t=e.axis,n=e.moveInto,a=e.isMoving;return ze(t.line,n.contentBox[t.start]+xt(t,a),kt(t,n.contentBox,a))}({axis:l,moveInto:r.page,isMoving:s});var c=t.displaced,d=t.displacedBy,u=c.all[0];if(u){var b=a[u];if(Ct(u,i))return At({axis:l,moveRelativeTo:b.page,isMoving:s});var m=ge(b.page,d.point);return At({axis:l,moveRelativeTo:m,isMoving:s})}var p=o[o.length-1];if(p.descriptor.id===n.descriptor.id)return s.borderBox.center;if(Ct(p.descriptor.id,i)){var f=ge(p.page,Ge(i.displacedBy.point));return St({axis:l,moveRelativeTo:f,isMoving:s})}return St({axis:l,moveRelativeTo:p.page,isMoving:s})}({impact:t,draggable:n,draggables:r,droppable:a,afterCritical:i}):function(e){var t=e.afterCritical,n=e.impact,a=e.draggables,r=lt(n);r||Oe(!1);var i=r.draggableId,o=a[i].page.borderBox.center,s=function(e){var t=e.displaced,n=e.afterCritical,a=e.combineWith,r=e.displacedBy,i=Boolean(t.visible[a]||t.invisible[a]);return Ct(a,n)?i?je:Ge(r.point):i?r.point:je}({displaced:n.displaced,afterCritical:t,combineWith:i,displacedBy:n.displacedBy});return Fe(o,s)}({impact:t,draggables:r,afterCritical:i}):o}(e),n=e.droppable;return n?Dt(n,t):t},Ot=function(e,t){var n=Ue(t,e.scroll.initial),a=Ge(n);return{frame:ue({top:t.y,bottom:t.y+e.frame.height,left:t.x,right:t.x+e.frame.width}),scroll:{initial:e.scroll.initial,max:e.scroll.max,current:t,diff:{value:n,displacement:a}}}};function Rt(e,t){return e.map((function(e){return t[e]}))}var Pt=function(e){var t,n,a=e.pageBorderBoxCenter,r=e.draggable,i=(t=e.viewport,n=a,Fe(t.scroll.diff.displacement,n)),o=Ue(i,r.page.borderBox.center);return Fe(r.client.borderBox.center,o)},Mt=function(e){var t=e.draggable,n=e.destination,a=e.newPageBorderBoxCenter,r=e.viewport,i=e.withDroppableDisplacement,o=e.onlyOnMainAxis,l=void 0!==o&&o,c=Ue(a,t.page.borderBox.center),d={target:qe(t.page.borderBox,c),destination:n,withDroppableDisplacement:i,viewport:r};return l?function(e){return yt(s({},e,{isVisibleThroughFrameFn:(t=e.destination.axis,function(e){var n=pt(e.top,e.bottom),a=pt(e.left,e.right);return function(e){return t===gt?n(e.top)&&n(e.bottom):a(e.left)&&a(e.right)}})}));var t}(d):ht(d)},Bt=function(e){var t=e.isMovingForward,n=e.draggable,a=e.destination,r=e.draggables,i=e.previousImpact,o=e.viewport,l=e.previousPageBorderBoxCenter,c=e.previousClientSelection,d=e.afterCritical;if(!a.isEnabled)return null;var u=ot(a.descriptor.id,r),b=dt(n,a),m=function(e){var t=e.isMovingForward,n=e.draggable,a=e.destination,r=e.insideDestination,i=e.previousImpact;if(!a.isCombineEnabled)return null;if(!st(i))return null;function o(e){var t={type:"COMBINE",combine:{draggableId:e,droppableId:a.descriptor.id}};return s({},i,{at:t})}var l=i.displaced.all,c=l.length?l[0]:null;if(t)return c?o(c):null;var d=ct(n,r);if(!c)return d.length?o(d[d.length-1].descriptor.id):null;var u=Qe(d,(function(e){return e.descriptor.id===c}));-1===u&&Oe(!1);var b=u-1;return b<0?null:o(d[b].descriptor.id)}({isMovingForward:t,draggable:n,destination:a,insideDestination:u,previousImpact:i})||function(e){var t=e.isMovingForward,n=e.isInHomeList,a=e.draggable,r=e.draggables,i=e.destination,o=e.insideDestination,s=e.previousImpact,l=e.viewport,c=e.afterCritical,d=s.at;if(d||Oe(!1),"REORDER"===d.type){var u=function(e){var t=e.isMovingForward,n=e.isInHomeList,a=e.insideDestination,r=e.location;if(!a.length)return null;var i=r.index,o=t?i+1:i-1,s=a[0].descriptor.index,l=a[a.length-1].descriptor.index;return o(n?l:l+1)?null:o}({isMovingForward:t,isInHomeList:n,location:d.destination,insideDestination:o});return null==u?null:Nt({draggable:a,insideDestination:o,destination:i,viewport:l,last:s.displaced,displacedBy:s.displacedBy,index:u})}var b=function(e){var t=e.isMovingForward,n=e.draggables,a=e.combine,r=e.afterCritical;if(!e.destination.isCombineEnabled)return null;var i=a.draggableId,o=n[i].descriptor.index;return Ct(i,r)?t?o:o-1:t?o+1:o}({isMovingForward:t,destination:i,displaced:s.displaced,draggables:r,combine:d.combine,afterCritical:c});return null==b?null:Nt({draggable:a,insideDestination:o,destination:i,viewport:l,last:s.displaced,displacedBy:s.displacedBy,index:b})}({isMovingForward:t,isInHomeList:b,draggable:n,draggables:r,destination:a,insideDestination:u,previousImpact:i,viewport:o,afterCritical:d});if(!m)return null;var p=It({impact:m,draggable:n,droppable:a,draggables:r,afterCritical:d});if(Mt({draggable:n,destination:a,newPageBorderBoxCenter:p,viewport:o.frame,withDroppableDisplacement:!1,onlyOnMainAxis:!0}))return{clientSelection:Pt({pageBorderBoxCenter:p,draggable:n,viewport:o}),impact:m,scrollJumpRequest:null};var f=Ue(p,l),_=function(e){var t=e.impact,n=e.viewport,a=e.destination,r=e.draggables,i=e.maxScrollChange,o=Ot(n,Fe(n.scroll.current,i)),l=a.frame?Ke(a,Fe(a.frame.scroll.current,i)):a,c=t.displaced,d=Et({afterDragging:Rt(c.all,r),destination:a,displacedBy:t.displacedBy,viewport:o.frame,last:c,forceShouldAnimate:!1}),u=Et({afterDragging:Rt(c.all,r),destination:l,displacedBy:t.displacedBy,viewport:n.frame,last:c,forceShouldAnimate:!1}),b={},m={},p=[c,d,u];return c.all.forEach((function(e){var t=function(e,t){for(var n=0;n1?d.sort((function(e,t){return Tt(e)[s.start]-Tt(t)[s.start]}))[0]:c.sort((function(e,t){var a=We(n,Ye(Tt(e))),r=We(n,Ye(Tt(t)));return a!==r?a-r:Tt(e)[s.start]-Tt(t)[s.start]}))[0]}({isMovingForward:t,pageBorderBoxCenter:n,source:r,droppables:o,viewport:s});if(!c)return null;var d=ot(c.descriptor.id,i),u=function(e){var t=e.pageBorderBoxCenter,n=e.viewport,a=e.destination,r=e.afterCritical,i=e.insideDestination.filter((function(e){return ht({target:jt(e,r),destination:a,viewport:n.frame,withDroppableDisplacement:!0})})).sort((function(e,n){var i=Ve(t,Dt(a,Lt(e,r))),o=Ve(t,Dt(a,Lt(n,r)));return ia.left&&n.topa.top))return!1;if(Wt(r)(t.center))return!0;var i=e.axis,o=r.center[i.crossAxisLine],s=t[i.crossAxisStart],l=t[i.crossAxisEnd],c=pt(r[i.crossAxisStart],r[i.crossAxisEnd]),d=c(s),u=c(l);return!d&&!u||(d?so)}));return r.length?1===r.length?r[0].descriptor.id:function(e){var t=e.pageBorderBox,n=e.candidates,a=e.draggable.page.borderBox.center,r=n.map((function(e){var n=e.axis,r=ze(e.axis.line,t.center[n.line],e.page.borderBox.center[n.crossAxisLine]);return{id:e.descriptor.id,distance:Ve(a,r)}})).sort((function(e,t){return t.distance-e.distance}));return r[0]?r[0].id:null}({pageBorderBox:t,draggable:n,candidates:r}):null}({pageBorderBox:l,draggable:n,droppables:r});if(!c)return mt;var d=r[c],u=ot(d.descriptor.id,a),b=function(e,t){var n=e.frame;return n?$t(t,n.scroll.diff.value):t}(d,l);return function(e){var t=e.draggable,n=e.pageBorderBoxWithDroppableScroll,a=e.previousImpact,r=e.destination,i=e.insideDestination,o=e.afterCritical;if(!r.isCombineEnabled)return null;var s=r.axis,l=Ft(r.axis,t.displaceBy),c=l.value,d=n[s.start],u=n[s.end],b=et(ct(t,i),(function(e){var t=e.descriptor.id,n=e.page.borderBox,r=n[s.size]/4,i=Ct(t,o),l=qt({displaced:a.displaced,id:t});return i?l?u>n[s.start]+r&&un[s.start]-c+r&&dn[s.start]+c+r&&un[s.start]+r&&dt.descriptor.index?n.descriptor.index-1:n.descriptor.index:null}({draggable:n,closest:et(ct(n,r),(function(e){var t=e.descriptor.id,n=e.page.borderBox.center[l.line],a=Ct(t,s),r=qt({displaced:i,id:t});return a?r?b<=n:u=1500)return.55;var a=In+On*(n/1500);return Number(("CANCEL"===t?.6*a:a).toFixed(2))}({current:r.current.client.offset,destination:g,reason:i});n({type:"DROP_ANIMATE",payload:{newHomeClientOffset:g,dropDuration:y,completed:v}})}else n(hn({completed:v}))}}else n(function(e){return{type:"DROP_PENDING",payload:e}}({reason:i}))}else e(a)}}},Pn=function(){return{x:window.pageXOffset,y:window.pageYOffset}};var Mn=function(e){var t=function(e){var t=e.onWindowScroll,n=Ce((function(){t(Pn())})),a=function(e){return{eventName:"scroll",options:{passive:!0,capture:!1},fn:function(t){t.target!==window&&t.target!==window.document||e()}}}(n),r=ke;function i(){return r!==ke}return{start:function(){i()&&Oe(!1),r=Se(window,[a])},stop:function(){i()||Oe(!1),n.cancel(),r(),r=ke},isActive:i}}({onWindowScroll:function(t){e.dispatch({type:"MOVE_BY_WINDOW_SCROLL",payload:{newScroll:t}})}});return function(e){return function(n){t.isActive()||"INITIAL_PUBLISH"!==n.type||t.start(),t.isActive()&&function(e){return"DROP_COMPLETE"===e.type||"DROP_ANIMATE"===e.type||"FLUSH"===e.type}(n)&&t.stop(),e(n)}}},Bn=function(e,t){t()},Tn=function(e,t){return{draggableId:e.draggable.id,type:e.droppable.type,source:{droppableId:e.droppable.id,index:e.draggable.index},mode:t}},Ln=function(e,t,n,a){if(e){var r=function(e){var t=!1,n=!1,a=setTimeout((function(){n=!0})),r=function(r){t||n||(t=!0,e(r),clearTimeout(a))};return r.wasCalled=function(){return t},r}(n);e(t,{announce:r}),r.wasCalled()||n(a(t))}else n(a(t))},jn=function(e,t){var n=function(e,t){var n,a=(n=[],{add:function(e){var t=setTimeout((function(){return function(e){var t=Qe(n,(function(t){return t.timerId===e}));-1===t&&Oe(!1),n.splice(t,1)[0].callback()}(t)})),a={timerId:t,callback:e};n.push(a)},flush:function(){if(n.length){var e=[].concat(n);n.length=0,e.forEach((function(e){clearTimeout(e.timerId),e.callback()}))}}}),r=null,i=function(n){r||Oe(!1),r=null,Bn(0,(function(){return Ln(e().onDragEnd,n,t,Le.onDragEnd)}))};return{beforeCapture:function(t,n){r&&Oe(!1),Bn(0,(function(){var a=e().onBeforeCapture;a&&a({draggableId:t,mode:n})}))},beforeStart:function(t,n){r&&Oe(!1),Bn(0,(function(){var a=e().onBeforeDragStart;a&&a(Tn(t,n))}))},start:function(n,i){r&&Oe(!1);var o=Tn(n,i);r={mode:i,lastCritical:n,lastLocation:o.source,lastCombine:null},a.add((function(){Bn(0,(function(){return Ln(e().onDragStart,o,t,Le.onDragStart)}))}))},update:function(n,i){var o=st(i),l=lt(i);r||Oe(!1);var c=!function(e,t){if(e===t)return!0;var n=e.draggable.id===t.draggable.id&&e.draggable.droppableId===t.draggable.droppableId&&e.draggable.type===t.draggable.type&&e.draggable.index===t.draggable.index,a=e.droppable.id===t.droppable.id&&e.droppable.type===t.droppable.type;return n&&a}(n,r.lastCritical);c&&(r.lastCritical=n);var d,u,b=(u=o,!(null==(d=r.lastLocation)&&null==u||null!=d&&null!=u&&d.droppableId===u.droppableId&&d.index===u.index));b&&(r.lastLocation=o);var m=!function(e,t){return null==e&&null==t||null!=e&&null!=t&&e.draggableId===t.draggableId&&e.droppableId===t.droppableId}(r.lastCombine,l);if(m&&(r.lastCombine=l),c||b||m){var p=s({},Tn(n,r.mode),{combine:l,destination:o});a.add((function(){Bn(0,(function(){return Ln(e().onDragUpdate,p,t,Le.onDragUpdate)}))}))}},flush:function(){r||Oe(!1),a.flush()},drop:i,abort:function(){if(r){var e=s({},Tn(r.lastCritical,r.mode),{combine:null,destination:null,reason:"CANCEL"});i(e)}}}}(e,t);return function(e){return function(t){return function(a){if("BEFORE_INITIAL_CAPTURE"!==a.type){if("INITIAL_PUBLISH"===a.type){var r=a.payload.critical;return n.beforeStart(r,a.payload.movementMode),t(a),void n.start(r,a.payload.movementMode)}if("DROP_COMPLETE"===a.type){var i=a.payload.completed.result;return n.flush(),t(a),void n.drop(i)}if(t(a),"FLUSH"!==a.type){var o=e.getState();"DRAGGING"===o.phase&&n.update(o.critical,o.impact)}else n.abort()}else n.beforeCapture(a.payload.draggableId,a.payload.movementMode)}}}},Fn=function(e){return function(t){return function(n){if("DROP_ANIMATION_FINISHED"===n.type){var a=e.getState();"DROP_ANIMATING"!==a.phase&&Oe(!1),e.dispatch(hn({completed:a.completed}))}else t(n)}}},Un=function(e){var t=null,n=null;return function(a){return function(r){if("FLUSH"!==r.type&&"DROP_COMPLETE"!==r.type&&"DROP_ANIMATION_FINISHED"!==r.type||(n&&(cancelAnimationFrame(n),n=null),t&&(t(),t=null)),a(r),"DROP_ANIMATE"===r.type){var i={eventName:"scroll",options:{capture:!0,passive:!1,once:!0},fn:function(){"DROP_ANIMATING"===e.getState().phase&&e.dispatch({type:"DROP_ANIMATION_FINISHED",payload:null})}};n=requestAnimationFrame((function(){n=null,t=Se(window,[i])}))}}}},Hn=function(e){return function(t){return function(n){if(t(n),"PUBLISH_WHILE_DRAGGING"===n.type){var a=e.getState();"DROP_PENDING"===a.phase&&(a.isWaiting||e.dispatch(En({reason:a.reason})))}}}},Gn=y,zn=function(e){var t,n=e.dimensionMarshal,a=e.focusMarshal,r=e.styleMarshal,i=e.getResponders,o=e.announce,s=e.autoScroller;return _(on,Gn(function(){for(var e=arguments.length,t=new Array(e),n=0;nt.startScrollingFrom)return 0;if(e<=t.maxScrollValueAt)return 28;if(e===t.startScrollingFrom)return 1;var n=ta({startOfRange:t.maxScrollValueAt,endOfRange:t.startScrollingFrom,current:e}),a=28*ea(1-n);return Math.ceil(a)}(t,n);return 0===i?0:r?Math.max(function(e,t){var n=t,a=aa,r=Date.now()-n;if(r>=aa)return e;if(rt.height,i=n.width>t.width;return i||r?i&&r?null:{x:i?0:a.x,y:r?0:a.y}:a}({container:n,subject:a,proposedScroll:c});return d?He(d,je)?null:d:null},la=$e((function(e){return 0===e?0:e>0?1:-1})),ca=(Yn=function(e,t){return e<0?e:e>t?e-t:0},function(e){var t=e.current,n=e.max,a=e.change,r=Fe(t,a),i={x:Yn(r.x,n.x),y:Yn(r.y,n.y)};return He(i,je)?null:i}),da=function(e){var t=e.max,n=e.current,a=e.change,r={x:Math.max(n.x,t.x),y:Math.max(n.y,t.y)},i=la(a),o=ca({max:r,current:n,change:i});return!o||0!==i.x&&0===o.x||0!==i.y&&0===o.y},ua=function(e,t){return da({current:e.scroll.current,max:e.scroll.max,change:t})},ba=function(e,t){var n=e.frame;return!!n&&da({current:n.scroll.current,max:n.scroll.max,change:t})},ma=function(e){var t=e.state,n=e.dragStartTime,a=e.shouldUseTimeDampening,r=e.scrollWindow,i=e.scrollDroppable,o=t.current.page.borderBoxCenter,s=t.dimensions.draggables[t.critical.draggable.id].page.marginBox;if(t.isWindowScrollAllowed){var l=function(e){var t=e.viewport,n=e.subject,a=e.center,r=e.shouldUseTimeDampening,i=sa({dragStartTime:e.dragStartTime,container:t.frame,subject:n,center:a,shouldUseTimeDampening:r});return i&&ua(t,i)?i:null}({dragStartTime:n,viewport:t.viewport,subject:s,center:o,shouldUseTimeDampening:a});if(l)return void r(l)}var c=function(e){var t=e.center,n=e.destination,a=e.droppables;if(n){var r=a[n];return r.frame?r:null}var i=function(e,t){var n=et(Qn(t),(function(t){return t.frame||Oe(!1),Wt(t.frame.pageMarginBox)(e)}));return n}(t,a);return i}({center:o,destination:Gt(t.impact),droppables:t.dimensions.droppables});if(c){var d=function(e){var t=e.droppable,n=e.subject,a=e.center,r=e.dragStartTime,i=e.shouldUseTimeDampening,o=t.frame;if(!o)return null;var s=sa({dragStartTime:r,container:o.pageMarginBox,subject:n,center:a,shouldUseTimeDampening:i});return s&&ba(t,s)?s:null}({dragStartTime:n,droppable:c,subject:s,center:o,shouldUseTimeDampening:a});d&&i(c.descriptor.id,d)}},pa=function(e){var t=e.move,n=e.scrollDroppable,a=e.scrollWindow;return function(e){var r=e.scrollJumpRequest;if(r){var i=Gt(e.impact);i||Oe(!1);var o=function(e,t){if(!ba(e,t))return t;var a=function(e,t){var n=e.frame;return n&&ba(e,t)?ca({current:n.scroll.current,max:n.scroll.max,change:t}):null}(e,t);if(!a)return n(e.descriptor.id,t),null;var r=Ue(t,a);return n(e.descriptor.id,r),Ue(t,r)}(e.dimensions.droppables[i],r);if(o){var s=e.viewport,l=function(e,t,n){if(!e)return n;if(!ua(t,n))return n;var r=function(e,t){if(!ua(e,t))return null;var n=e.scroll.max,a=e.scroll.current;return ca({current:a,max:n,change:t})}(t,n);if(!r)return a(n),null;var i=Ue(n,r);return a(i),Ue(n,i)}(e.isWindowScrollAllowed,s,o);l&&function(e,n){var a=Fe(e.current.client.selection,n);t({client:a})}(e,l)}}}},fa=function(e){var t=e.scrollDroppable,n=e.scrollWindow,a=e.move,r=function(e){var t=e.scrollDroppable,n=Ce(e.scrollWindow),a=Ce(t),r=null,i=function(e){r||Oe(!1);var t=r,i=t.shouldUseTimeDampening,o=t.dragStartTime;ma({state:e,scrollWindow:n,scrollDroppable:a,dragStartTime:o,shouldUseTimeDampening:i})};return{start:function(e){r&&Oe(!1);var t=Date.now(),n=!1,a=function(){n=!0};ma({state:e,dragStartTime:0,shouldUseTimeDampening:!1,scrollWindow:a,scrollDroppable:a}),r={dragStartTime:t,shouldUseTimeDampening:n},n&&i(e)},stop:function(){r&&(n.cancel(),a.cancel(),r=null)},scroll:i}}({scrollWindow:n,scrollDroppable:t}),i=pa({move:a,scrollWindow:n,scrollDroppable:t});return{scroll:function(e){"DRAGGING"===e.phase&&("FLUID"!==e.movementMode?e.scrollJumpRequest&&i(e):r.scroll(e))},start:r.start,stop:r.stop}},_a="data-rbd",ga={base:Jn=_a+"-drag-handle",draggableId:Jn+"-draggable-id",contextId:Jn+"-context-id"},va=function(){var e=_a+"-draggable";return{base:e,contextId:e+"-context-id",id:e+"-id"}}(),ya=function(){var e=_a+"-droppable";return{base:e,contextId:e+"-context-id",id:e+"-id"}}(),ha={contextId:_a+"-scroll-container-context-id"},Ea=function(e,t){return e.map((function(e){var n=e.styles[t];return n?e.selector+" { "+n+" }":""})).join(" ")},wa=function(e){var t,n,a,r=(t=e,function(e){return"["+e+'="'+t+'"]'}),i=(n="\n cursor: -webkit-grab;\n cursor: grab;\n ",{selector:r(ga.contextId),styles:{always:"\n -webkit-touch-callout: none;\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n touch-action: manipulation;\n ",resting:n,dragging:"pointer-events: none;",dropAnimating:n}}),o=[(a="\n transition: "+Sn.outOfTheWay+";\n ",{selector:r(va.contextId),styles:{dragging:a,dropAnimating:a,userCancel:a}}),i,{selector:r(ya.contextId),styles:{always:"overflow-anchor: none;"}},{selector:"body",styles:{dragging:"\n cursor: grabbing;\n cursor: -webkit-grabbing;\n user-select: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n overflow-anchor: none;\n "}}];return{always:Ea(o,"always"),resting:Ea(o,"resting"),dragging:Ea(o,"dragging"),dropAnimating:Ea(o,"dropAnimating"),userCancel:Ea(o,"userCancel")}},Na="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement?a.useLayoutEffect:a.useEffect,Ca=function(){var e=document.querySelector("head");return e||Oe(!1),e},xa=function(e){var t=document.createElement("style");return e&&t.setAttribute("nonce",e),t.type="text/css",t},ka=function(e){return e&&e.ownerDocument?e.ownerDocument.defaultView:window};function Sa(e){return e instanceof ka(e).HTMLElement}function Aa(){var e={draggables:{},droppables:{}},t=[];function n(e){t.length&&t.forEach((function(t){return t(e)}))}function a(t){return e.draggables[t]||null}function r(t){return e.droppables[t]||null}return{draggable:{register:function(t){e.draggables[t.descriptor.id]=t,n({type:"ADDITION",value:t})},update:function(t,n){var a=e.draggables[n.descriptor.id];a&&a.uniqueId===t.uniqueId&&(delete e.draggables[n.descriptor.id],e.draggables[t.descriptor.id]=t)},unregister:function(t){var r=t.descriptor.id,i=a(r);i&&t.uniqueId===i.uniqueId&&(delete e.draggables[r],n({type:"REMOVAL",value:t}))},getById:function(e){var t=a(e);return t||Oe(!1),t},findById:a,exists:function(e){return Boolean(a(e))},getAllByType:function(t){return Xe(e.draggables).filter((function(e){return e.descriptor.type===t}))}},droppable:{register:function(t){e.droppables[t.descriptor.id]=t},unregister:function(t){var n=r(t.descriptor.id);n&&t.uniqueId===n.uniqueId&&delete e.droppables[t.descriptor.id]},getById:function(e){var t=r(e);return t||Oe(!1),t},findById:r,exists:function(e){return Boolean(r(e))},getAllByType:function(t){return Xe(e.droppables).filter((function(e){return e.descriptor.type===t}))}},subscribe:function(e){return t.push(e),function(){var n=t.indexOf(e);-1!==n&&t.splice(n,1)}},clean:function(){e.draggables={},e.droppables={},t.length=0}}}var Da=r().createContext(null),Ia=function(){var e=document.body;return e||Oe(!1),e},Oa={position:"absolute",width:"1px",height:"1px",margin:"-1px",border:"0",padding:"0",overflow:"hidden",clip:"rect(0 0 0 0)","clip-path":"inset(100%)"},Ra=function(e){return"rbd-announcement-"+e},Pa=0,Ma={separator:"::"};function Ba(e,t){return void 0===t&&(t=Ma),ce((function(){return""+e+t.separator+Pa++}),[t.separator,e])}var Ta=r().createContext(null);function La(e){var t=(0,a.useRef)(e);return(0,a.useEffect)((function(){t.current=e})),t}var ja,Fa,Ua=((ja={})[13]=!0,ja[9]=!0,ja),Ha=function(e){Ua[e.keyCode]&&e.preventDefault()},Ga=function(){var e="visibilitychange";return"undefined"==typeof document?e:et([e,"ms"+e,"webkit"+e,"moz"+e,"o"+e],(function(e){return"on"+e in document}))||e}(),za={type:"IDLE"};function Va(){}var Wa=((Fa={})[34]=!0,Fa[33]=!0,Fa[36]=!0,Fa[35]=!0,Fa);var $a={type:"IDLE"},qa={input:!0,button:!0,textarea:!0,select:!0,option:!0,optgroup:!0,video:!0,audio:!0};function Ya(e,t){if(null==t)return!1;if(Boolean(qa[t.tagName.toLowerCase()]))return!0;var n=t.getAttribute("contenteditable");return"true"===n||""===n||t!==e&&Ya(e,t.parentElement)}function Ja(e,t){var n=t.target;return!!Sa(n)&&Ya(e,n)}var Za=function(e){return ue(e.getBoundingClientRect()).center},Ka=function(){var e="matches";return"undefined"==typeof document?e:et([e,"msMatchesSelector","webkitMatchesSelector"],(function(e){return e in Element.prototype}))||e}();function Xa(e,t){return null==e?null:e[Ka](t)?e:Xa(e.parentElement,t)}function Qa(e,t){return e.closest?e.closest(t):Xa(e,t)}function er(e){e.preventDefault()}function tr(e){var t=e.expected,n=e.phase,a=e.isLockActive;return e.shouldWarn,!!a()&&t===n}function nr(e){var t=e.lockAPI,n=e.store,a=e.registry,r=e.draggableId;if(t.isClaimed())return!1;var i=a.draggable.findById(r);return!!i&&!!i.options.isEnabled&&!!Kn(n.getState(),r)}var ar=[function(e){var t=(0,a.useRef)(za),n=(0,a.useRef)(ke),r=ce((function(){return{eventName:"mousedown",fn:function(t){if(!t.defaultPrevented&&0===t.button&&!(t.ctrlKey||t.metaKey||t.shiftKey||t.altKey)){var a=e.findClosestDraggableId(t);if(a){var r=e.tryGetLock(a,s,{sourceEvent:t});if(r){t.preventDefault();var i={x:t.clientX,y:t.clientY};n.current(),d(r,i)}}}}}}),[e]),i=ce((function(){return{eventName:"webkitmouseforcewillbegin",fn:function(t){if(!t.defaultPrevented){var n=e.findClosestDraggableId(t);if(n){var a=e.findOptionsForDraggable(n);a&&(a.shouldRespectForcePress||e.canGetLock(n)&&t.preventDefault())}}}}}),[e]),o=de((function(){n.current=Se(window,[i,r],{passive:!1,capture:!0})}),[i,r]),s=de((function(){"IDLE"!==t.current.type&&(t.current=za,n.current(),o())}),[o]),l=de((function(){var e=t.current;s(),"DRAGGING"===e.type&&e.actions.cancel({shouldBlockNextClick:!0}),"PENDING"===e.type&&e.actions.abort()}),[s]),c=de((function(){var e=function(e){var t=e.cancel,n=e.completed,a=e.getPhase,r=e.setPhase;return[{eventName:"mousemove",fn:function(e){var t=e.button,n=e.clientX,i=e.clientY;if(0===t){var o={x:n,y:i},s=a();if("DRAGGING"===s.type)return e.preventDefault(),void s.actions.move(o);if("PENDING"!==s.type&&Oe(!1),l=s.point,c=o,Math.abs(c.x-l.x)>=5||Math.abs(c.y-l.y)>=5){var l,c;e.preventDefault();var d=s.actions.fluidLift(o);r({type:"DRAGGING",actions:d})}}}},{eventName:"mouseup",fn:function(e){var r=a();"DRAGGING"===r.type?(e.preventDefault(),r.actions.drop({shouldBlockNextClick:!0}),n()):t()}},{eventName:"mousedown",fn:function(e){"DRAGGING"===a().type&&e.preventDefault(),t()}},{eventName:"keydown",fn:function(e){if("PENDING"!==a().type)return 27===e.keyCode?(e.preventDefault(),void t()):void Ha(e);t()}},{eventName:"resize",fn:t},{eventName:"scroll",options:{passive:!0,capture:!1},fn:function(){"PENDING"===a().type&&t()}},{eventName:"webkitmouseforcedown",fn:function(e){var n=a();"IDLE"===n.type&&Oe(!1),n.actions.shouldRespectForcePress()?t():e.preventDefault()}},{eventName:Ga,fn:t}]}({cancel:l,completed:s,getPhase:function(){return t.current},setPhase:function(e){t.current=e}});n.current=Se(window,e,{capture:!0,passive:!1})}),[l,s]),d=de((function(e,n){"IDLE"!==t.current.type&&Oe(!1),t.current={type:"PENDING",point:n,actions:e},c()}),[c]);Na((function(){return o(),function(){n.current()}}),[o])},function(e){var t=(0,a.useRef)(Va),n=ce((function(){return{eventName:"keydown",fn:function(n){if(!n.defaultPrevented&&32===n.keyCode){var a=e.findClosestDraggableId(n);if(a){var i=e.tryGetLock(a,l,{sourceEvent:n});if(i){n.preventDefault();var o=!0,s=i.snapLift();t.current(),t.current=Se(window,function(e,t){function n(){t(),e.cancel()}return[{eventName:"keydown",fn:function(a){return 27===a.keyCode?(a.preventDefault(),void n()):32===a.keyCode?(a.preventDefault(),t(),void e.drop()):40===a.keyCode?(a.preventDefault(),void e.moveDown()):38===a.keyCode?(a.preventDefault(),void e.moveUp()):39===a.keyCode?(a.preventDefault(),void e.moveRight()):37===a.keyCode?(a.preventDefault(),void e.moveLeft()):void(Wa[a.keyCode]?a.preventDefault():Ha(a))}},{eventName:"mousedown",fn:n},{eventName:"mouseup",fn:n},{eventName:"click",fn:n},{eventName:"touchstart",fn:n},{eventName:"resize",fn:n},{eventName:"wheel",fn:n,options:{passive:!0}},{eventName:Ga,fn:n}]}(s,l),{capture:!0,passive:!1})}}}function l(){o||Oe(!1),o=!1,t.current(),r()}}}}),[e]),r=de((function(){t.current=Se(window,[n],{passive:!1,capture:!0})}),[n]);Na((function(){return r(),function(){t.current()}}),[r])},function(e){var t=(0,a.useRef)($a),n=(0,a.useRef)(ke),r=de((function(){return t.current}),[]),i=de((function(e){t.current=e}),[]),o=ce((function(){return{eventName:"touchstart",fn:function(t){if(!t.defaultPrevented){var a=e.findClosestDraggableId(t);if(a){var r=e.tryGetLock(a,l,{sourceEvent:t});if(r){var i=t.touches[0],o={x:i.clientX,y:i.clientY};n.current(),b(r,o)}}}}}}),[e]),s=de((function(){n.current=Se(window,[o],{capture:!0,passive:!1})}),[o]),l=de((function(){var e=t.current;"IDLE"!==e.type&&("PENDING"===e.type&&clearTimeout(e.longPressTimerId),i($a),n.current(),s())}),[s,i]),c=de((function(){var e=t.current;l(),"DRAGGING"===e.type&&e.actions.cancel({shouldBlockNextClick:!0}),"PENDING"===e.type&&e.actions.abort()}),[l]),d=de((function(){var e={capture:!0,passive:!1},t={cancel:c,completed:l,getPhase:r},a=Se(window,function(e){var t=e.cancel,n=e.completed,a=e.getPhase;return[{eventName:"touchmove",options:{capture:!1},fn:function(e){var n=a();if("DRAGGING"===n.type){n.hasMoved=!0;var r=e.touches[0],i={x:r.clientX,y:r.clientY};e.preventDefault(),n.actions.move(i)}else t()}},{eventName:"touchend",fn:function(e){var r=a();"DRAGGING"===r.type?(e.preventDefault(),r.actions.drop({shouldBlockNextClick:!0}),n()):t()}},{eventName:"touchcancel",fn:function(e){"DRAGGING"===a().type?(e.preventDefault(),t()):t()}},{eventName:"touchforcechange",fn:function(e){var n=a();"IDLE"===n.type&&Oe(!1);var r=e.touches[0];if(r&&r.force>=.15){var i=n.actions.shouldRespectForcePress();if("PENDING"!==n.type)return i?n.hasMoved?void e.preventDefault():void t():void e.preventDefault();i&&t()}}},{eventName:Ga,fn:t}]}(t),e),i=Se(window,function(e){var t=e.cancel,n=e.getPhase;return[{eventName:"orientationchange",fn:t},{eventName:"resize",fn:t},{eventName:"contextmenu",fn:function(e){e.preventDefault()}},{eventName:"keydown",fn:function(e){"DRAGGING"===n().type?(27===e.keyCode&&e.preventDefault(),t()):t()}},{eventName:Ga,fn:t}]}(t),e);n.current=function(){a(),i()}}),[c,r,l]),u=de((function(){var e=r();"PENDING"!==e.type&&Oe(!1);var t=e.actions.fluidLift(e.point);i({type:"DRAGGING",actions:t,hasMoved:!1})}),[r,i]),b=de((function(e,t){"IDLE"!==r().type&&Oe(!1);var n=setTimeout(u,120);i({type:"PENDING",point:t,actions:e,longPressTimerId:n}),d()}),[d,r,i,u]);Na((function(){return s(),function(){n.current();var e=r();"PENDING"===e.type&&(clearTimeout(e.longPressTimerId),i($a))}}),[r,s,i]),Na((function(){return Se(window,[{eventName:"touchmove",fn:function(){},options:{capture:!1,passive:!1}}])}),[])}];function rr(e){var t=e.contextId,n=e.store,r=e.registry,i=e.customSensors,o=e.enableDefaultSensors,l=[].concat(o?ar:[],i||[]),c=(0,a.useState)((function(){return function(){var e=null;function t(){e||Oe(!1),e=null}return{isClaimed:function(){return Boolean(e)},isActive:function(t){return t===e},claim:function(t){e&&Oe(!1);var n={abandon:t};return e=n,n},release:t,tryAbandon:function(){e&&(e.abandon(),t())}}}()}))[0],d=de((function(e,t){e.isDragging&&!t.isDragging&&c.tryAbandon()}),[c]);Na((function(){var e=n.getState();return n.subscribe((function(){var t=n.getState();d(e,t),e=t}))}),[c,n,d]),Na((function(){return c.tryAbandon}),[c.tryAbandon]);for(var u=de((function(e){return nr({lockAPI:c,registry:r,store:n,draggableId:e})}),[c,r,n]),b=de((function(e,a,i){return function(e){var t=e.lockAPI,n=e.contextId,a=e.store,r=e.registry,i=e.draggableId,o=e.forceSensorStop,l=e.sourceEvent;if(!nr({lockAPI:t,store:a,registry:r,draggableId:i}))return null;var c=r.draggable.getById(i),d=function(e,t){var n="["+va.contextId+'="'+e+'"]',a=et(tt(document.querySelectorAll(n)),(function(e){return e.getAttribute(va.id)===t}));return a&&Sa(a)?a:null}(n,c.descriptor.id);if(!d)return null;if(l&&!c.options.canDragInteractiveElements&&Ja(d,l))return null;var u=t.claim(o||ke),b="PRE_DRAG";function m(){return c.options.shouldRespectForcePress}function p(){return t.isActive(u)}var f=function(e,t){tr({expected:e,phase:b,isLockActive:p,shouldWarn:!0})&&a.dispatch(t())}.bind(null,"DRAGGING");function _(e){function n(){t.release(),b="COMPLETED"}function r(t,r){if(void 0===r&&(r={shouldBlockNextClick:!1}),e.cleanup(),r.shouldBlockNextClick){var i=Se(window,[{eventName:"click",fn:er,options:{once:!0,passive:!1,capture:!0}}]);setTimeout(i)}n(),a.dispatch(En({reason:t}))}return"PRE_DRAG"!==b&&(n(),"PRE_DRAG"!==b&&Oe(!1)),a.dispatch(sn(e.liftActionArgs)),b="DRAGGING",s({isActive:function(){return tr({expected:"DRAGGING",phase:b,isLockActive:p,shouldWarn:!1})},shouldRespectForcePress:m,drop:function(e){return r("DROP",e)},cancel:function(e){return r("CANCEL",e)}},e.actions)}return{isActive:function(){return tr({expected:"PRE_DRAG",phase:b,isLockActive:p,shouldWarn:!1})},shouldRespectForcePress:m,fluidLift:function(e){var t=Ce((function(e){f((function(){return mn({client:e})}))}));return s({},_({liftActionArgs:{id:i,clientSelection:e,movementMode:"FLUID"},cleanup:function(){return t.cancel()},actions:{move:t}}),{move:t})},snapLift:function(){var e={moveUp:function(){return f(pn)},moveRight:function(){return f(gn)},moveDown:function(){return f(fn)},moveLeft:function(){return f(vn)}};return _({liftActionArgs:{id:i,clientSelection:Za(d),movementMode:"SNAP"},cleanup:ke,actions:e})},abort:function(){tr({expected:"PRE_DRAG",phase:b,isLockActive:p,shouldWarn:!0})&&t.release()}}}({lockAPI:c,registry:r,contextId:t,store:n,draggableId:e,forceSensorStop:a,sourceEvent:i&&i.sourceEvent?i.sourceEvent:null})}),[t,c,r,n]),m=de((function(e){return function(e,t){var n=function(e,t){var n,a=t.target;if(!((n=a)instanceof ka(n).Element))return null;var r=function(e){return"["+ga.contextId+'="'+e+'"]'}(e),i=Qa(a,r);return i&&Sa(i)?i:null}(e,t);return n?n.getAttribute(ga.draggableId):null}(t,e)}),[t]),p=de((function(e){var t=r.draggable.findById(e);return t?t.options:null}),[r.draggable]),f=de((function(){c.isClaimed()&&(c.tryAbandon(),"IDLE"!==n.getState().phase&&n.dispatch(yn()))}),[c,n]),_=de(c.isClaimed,[c]),g=ce((function(){return{canGetLock:u,tryGetLock:b,findClosestDraggableId:m,findOptionsForDraggable:p,tryReleaseLock:f,isLockClaimed:_}}),[u,b,m,p,f,_]),v=0;v{function a(e,t){var n=[];if(t<=7)for(var a=1;a<=t;a++)n.push(a);else{n.push(1),e>4&&n.push("...");var r=Math.max(2,e-1),i=Math.min(t-1,e+1);e<=3&&(i=Math.min(t-1,5)),e>=t-2&&(r=Math.max(2,t-5+1));for(var o=r;o<=i;o++)n.push(o);ea})}},r={};function i(e){var t=r[e];if(void 0!==t)return t.exports;var n=r[e]={exports:{}};return a[e](n,n.exports,i),n.exports}i.m=a,i.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return i.d(t,{a:t}),t},t=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,i.t=function(n,a){if(1&a&&(n=this(n)),8&a)return n;if("object"==typeof n&&n){if(4&a&&n.__esModule)return n;if(16&a&&"function"==typeof n.then)return n}var r=Object.create(null);i.r(r);var o={};e=e||[null,t({}),t([]),t(t)];for(var s=2&a&&n;"object"==typeof s&&!~e.indexOf(s);s=t(s))Object.getOwnPropertyNames(s).forEach((e=>o[e]=()=>n[e]));return o.default=()=>n,i.d(r,o),r},i.d=(e,t)=>{for(var n in t)i.o(t,n)&&!i.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,n)=>(i.f[n](e,t),t)),[])),i.u=e=>e+".js",i.miniCssF=e=>{},i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n={},i.l=(e,t,a,r)=>{if(n[e])n[e].push(t);else{var o,s;if(void 0!==a)for(var l=document.getElementsByTagName("script"),c=0;c{o.onerror=o.onload=null,clearTimeout(b);var r=n[e];if(delete n[e],o.parentNode&&o.parentNode.removeChild(o),r&&r.forEach((e=>e(a))),t)return t(a)},b=setTimeout(u.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=u.bind(null,o.onerror),o.onload=u.bind(null,o.onload),s&&document.head.appendChild(o)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;i.g.importScripts&&(e=i.g.location+"");var t=i.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var n=t.getElementsByTagName("script");if(n.length)for(var a=n.length-1;a>-1&&(!e||!/^http(s?):/.test(e));)e=n[a--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),i.p=e})(),(()=>{var e={57:0};i.f.j=(t,n)=>{var a=i.o(e,t)?e[t]:void 0;if(0!==a)if(a)n.push(a[2]);else{var r=new Promise(((n,r)=>a=e[t]=[n,r]));n.push(a[2]=r);var o=i.p+i.u(t),s=new Error;i.l(o,(n=>{if(i.o(e,t)&&(0!==(a=e[t])&&(e[t]=void 0),a)){var r=n&&("load"===n.type?"missing":n.type),o=n&&n.target&&n.target.src;s.message="Loading chunk "+t+" failed.\n("+r+": "+o+")",s.name="ChunkLoadError",s.type=r,s.request=o,a[1](s)}}),"chunk-"+t,t)}};var t=(t,n)=>{var a,r,[o,s,l]=n,c=0;if(o.some((t=>0!==e[t]))){for(a in s)i.o(s,a)&&(i.m[a]=s[a]);l&&l(i)}for(t&&t(n);cdelete u[e]))}var f=i(6045),_=i(6904);function g({media:e,alt:t}){if(!e||!e.url)return null;var n=(0,f.Pl)(e.url),a=e.poster?(0,f.Pl)(e.poster):"",r="bb-upgrade-modal__image-wrapper";return"youtube"!==e.type&&"vimeo"!==e.type&&"mp4"!==e.type||(r+=" bb-upgrade-modal__image-wrapper--video"),"youtube"===e.type||"vimeo"===e.type?(0,o.createElement)("div",{className:r},(0,o.createElement)("iframe",{src:n,title:t,className:"bb-upgrade-modal__video",frameBorder:"0",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowFullScreen:!0})):"mp4"===e.type?(0,o.createElement)("div",{className:r},(0,o.createElement)("video",{src:n,poster:a||void 0,className:"bb-upgrade-modal__video",autoPlay:!0,muted:!0,loop:!0,playsInline:!0,disablePictureInPicture:!0,controlsList:"nodownload nofullscreen noremoteplayback noplaybackrate"})):(0,o.createElement)("div",{className:r},(0,o.createElement)("img",{src:n,alt:t,className:"bb-upgrade-modal__image"}))}function v({feature:e,onClose:t}){if(!e)return null;var n;n="plus"===e.upgrade_tier?(0,l.__)("UPGRADE SCALE","buddyboss"):"start"===e.upgrade_tier?(0,l.__)("UPGRADE START","buddyboss"):(0,l.__)("UPGRADE LAUNCH","buddyboss");var a=e.upgrade_description||e.description||"",r=function(e){return e.upgrade_media&&e.upgrade_media.type?e.upgrade_media:e.upgrade_image_url?{type:"image",url:e.upgrade_image_url,poster:""}:null}(e);return(0,o.createElement)(c.Modal,{title:e.label,onRequestClose:t,className:"bb-upgrade-modal bb-admin-settings-modal",shouldCloseOnClickOutside:!0},(0,o.createElement)("div",{className:"bb-upgrade-modal__body"},(0,o.createElement)(g,{media:r,alt:e.label}),(0,o.createElement)("div",{className:"bb-upgrade-modal__content"},e.upgrade_title&&(0,o.createElement)("h3",{className:"bb-upgrade-modal__title"},e.upgrade_title),(0,o.createElement)("p",{className:"bb-upgrade-modal__description",dangerouslySetInnerHTML:{__html:(0,f.pn)(a)}}),(0,o.createElement)("a",{href:(0,f.Pl)(e.upgrade_url)||"https://www.buddyboss.com/pricing/",target:"_blank",rel:"noopener noreferrer",className:`bb-upgrade-modal__cta bb-upgrade-modal__cta--${e.upgrade_tier||"plus"}`},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-crown-simple"}),n))))}var y=i(7941);function h({onNavigate:e}){const[t,n]=(0,s.useState)([]),[a,r]=(0,s.useState)([]),[i,u]=(0,s.useState)(!0),[b,m]=(0,s.useState)("all"),[g,h]=(0,s.useState)(""),[E,w]=(0,s.useState)(""),[N,C]=(0,s.useState)(null),[x,k]=(0,s.useState)(null),[S,A]=(0,s.useState)(null),[D,I]=(0,s.useState)((()=>new Set));(0,s.useEffect)((()=>{(0,d.Kl)().then((e=>{if(Array.isArray(e)){var t=e.filter((function(e){return!e.is_placeholder})),a=e.filter((function(e){return!!e.is_placeholder}));n(t),r(a)}else n([]),r([]);u(!1)})).catch((function(){n([]),r([]),u(!1)}))}),[]);var O=(0,s.useMemo)((function(){var e=t.slice(),n=!0;if("all"!==b&&(e=e.filter((function(e){return e.status===b})),n=!1),g&&(e=e.filter((function(e){return e.category===g}))),E&&E.length>=2){var r=E.toLowerCase();e=e.filter((function(e){return-1!==e.label.toLowerCase().indexOf(r)||e.description&&-1!==e.description.toLowerCase().indexOf(r)})),n=!1}if(n){var i=a.slice();g&&(i=i.filter((function(e){return e.category===g}))),e=e.concat(i)}return e.sort((function(e,t){var n="number"==typeof e.order?e.order:100,a="number"==typeof t.order?t.order:100;if(n!==a)return n-a;var r=e.label||"",i=t.label||"";return r.localeCompare(i)})),e}),[t,a,b,g,E]);const R=O.reduce(((e,t)=>{const n=t.category||"community";return e[n]||(e[n]=[]),e[n].push(t),e}),{}),P={};["community","add-ons","integrations","tools"].forEach((function(e){R[e]&&(P[e]=R[e])})),Object.keys(R).forEach((function(e){P[e]||(P[e]=R[e])}));const M={all:t.length+a.length,active:t.filter((function(e){return"active"===e.status})).length,inactive:t.filter((function(e){return"inactive"===e.status})).length},B=[].concat(t,a).reduce((function(e,t){var n=t.category||"community";return e[n]=(e[n]||0)+1,e}),{});(0,_.A)(N,C);const T=(0,s.useRef)({}),L=(e,a)=>{const r=a?"active":"inactive",i=a?"inactive":"active",o=t.find((t=>t.id===e)),s=o?.label||e;C({status:"saving",message:(0,l.__)("Saving changes...","buddyboss")}),n((t=>t.map((t=>t.id===e?{...t,status:r}:t)))),(0,d.Dx)(e,{status:r}),T.current[e]&&T.current[e].abort();const c=new AbortController;T.current[e]=c,I((t=>{const n=new Set(t);return n.add(e),n}));const u=()=>{I((t=>{if(!t.has(e))return t;const n=new Set(t);return n.delete(e),n}))};(0,d.P1)(e,a,{signal:c.signal}).then((t=>{if(T.current[e]===c&&delete T.current[e],u(),t.success){const i=t.data?.data,c=t.data?.deactivated_dependents||[],u=t.data?.reactivatable_dependents||[];if(n((t=>t.map((t=>t.id===e?{...t,...i}:-1!==c.indexOf(t.id)?{...t,status:"active"===t.status?"inactive":t.status,available:!1}:-1!==u.indexOf(t.id)?{...t,available:!0}:t)))),(0,d.Dx)(e,i),c.forEach((function(e){(0,d.Dx)(e,{available:!1})})),u.forEach((function(e){(0,d.Dx)(e,{available:!0})})),p(),o&&o.settings_route&&o.settings_route.startsWith("http"))try{var r=new URL(o.settings_route).searchParams.get("page");if(r&&"bb-settings"!==r){var b=document.querySelector('#adminmenu a[href*="page='+CSS.escape(r)+'"]');if(b){var m=b.closest("li");m&&(m.style.display=a?"":"none")}else a&&window.location.reload()}}catch(e){}const f=a?(0,l.sprintf)((0,l.__)("%s has been enabled.","buddyboss"),s):(0,l.sprintf)((0,l.__)("%s has been disabled.","buddyboss"),s);C({status:"success",message:f})}else n((t=>t.map((t=>t.id===e?{...t,status:i}:t)))),(0,d.Dx)(e,{status:i}),C({status:"error",message:t.data?.message||(0,l.__)("Failed to update feature. Please try again.","buddyboss")})})).catch((t=>{"AbortError"!==t.name&&(T.current[e]===c&&delete T.current[e],u(),n((t=>t.map((t=>t.id===e?{...t,status:i}:t)))),(0,d.Dx)(e,{status:i}),C({status:"error",message:(0,l.__)("Failed to update feature. Please try again.","buddyboss")}))}))},j=(e,t)=>{if(e.plugin_slug&&window.bbAdminData.addonNonce){var a=e.label||e.id,i="mosh_addon_install"===t;C({status:"saving",message:i?(0,l.sprintf)((0,l.__)("Installing & activating %s...","buddyboss"),a):(0,l.sprintf)((0,l.__)("Activating %s...","buddyboss"),a)});var o=new FormData;o.append("action",t),o.append("_ajax_nonce",window.bbAdminData.addonNonce),o.append("slug",e.plugin_slug),o.append("extension_type","plugin"),fetch(window.bbAdminData.ajaxUrl,{method:"POST",body:o}).then((function(e){return e.json()})).then((function(e){if(e&&e.success)return C({status:"success",message:i?(0,l.sprintf)((0,l.__)("%s has been installed and activated.","buddyboss"),a):(0,l.sprintf)((0,l.__)("%s has been activated.","buddyboss"),a)}),(0,d.x$)(),(0,d.i)().then((function(e){if(e&&e.success&&Array.isArray(e.data)){var t=e.data.filter((function(e){return!e.is_placeholder})),a=e.data.filter((function(e){return!!e.is_placeholder}));n(t),r(a)}}));var t=e&&e.data&&e.data.message?e.data.message:(0,l.__)("Failed to process. Please try again.","buddyboss");C({status:"error",message:t})})).catch((function(){C({status:"error",message:(0,l.__)("Failed to process. Please try again.","buddyboss")})}))}};return i?(0,o.createElement)("div",{className:"bb-admin-settings bb-admin-loading"},(0,o.createElement)(c.Spinner,null)):(0,o.createElement)("div",{className:"bb-admin-settings"},(0,o.createElement)("div",{className:"bb-admin-settings__container"},(0,o.createElement)("div",{className:"bb-admin-settings__filters"},(0,o.createElement)("div",{className:"bb-admin-settings__filter-tabs"},(0,o.createElement)("button",{className:"bb-admin-settings__filter-tab "+("all"===b?"bb-admin-settings__filter-tab--active":""),onClick:()=>m("all")},(0,l.__)("All","buddyboss")," (",M.all,")"),(0,o.createElement)("button",{className:"bb-admin-settings__filter-tab "+("active"===b?"bb-admin-settings__filter-tab--active":""),onClick:()=>m("active")},(0,l.__)("Active","buddyboss")," (",M.active,")"),(0,o.createElement)("button",{className:"bb-admin-settings__filter-tab "+("inactive"===b?"bb-admin-settings__filter-tab--active":""),onClick:()=>m("inactive")},(0,l.__)("Inactive","buddyboss")," (",M.inactive,")")),(0,o.createElement)("div",{className:"bb-admin-settings__filter-right"},(0,o.createElement)("select",{className:"bb-admin-settings__select bb-admin-settings__filter-select",value:g,onChange:e=>h(e.target.value)},(0,o.createElement)("option",{value:""},(0,l.__)("All","buddyboss")),Object.keys(B).map((e=>(0,o.createElement)("option",{key:e,value:e},"community"===e?(0,l.__)("Community","buddyboss"):"add-ons"===e?(0,l.__)("Add-ons","buddyboss"):"tools"===e?(0,l.__)("Tools","buddyboss"):(0,l.__)("Integrations","buddyboss"))))))),(0,o.createElement)("div",{className:"bb-admin-settings__grid"},Object.entries(P).map((([n,r])=>(0,o.createElement)("div",{key:n,className:"bb-admin-settings__category"},(0,o.createElement)("div",{className:"community"===n?"bb-admin-settings__category-divider":"bb-admin-settings__category-divider bb-admin-settings__category-divider--with-line"},(0,o.createElement)("h2",{className:"bb-admin-settings__category-title"},"community"===n?(0,l.__)("BUDDYBOSS COMMUNITY SETTINGS","buddyboss"):"add-ons"===n?(0,l.__)("BUDDYBOSS ADD-ONS","buddyboss"):"integrations"===n?(0,l.__)("BUDDYBOSS INTEGRATIONS","buddyboss"):"tools"===n?(0,l.__)("TOOLS","buddyboss"):(0,l.__)("BUDDYBOSS INTEGRATIONS","buddyboss"))),(0,o.createElement)("div",{className:"bb-admin-settings__features-grid"},r.map((n=>{return(0,o.createElement)("div",{key:n.id,className:`bb-admin-settings__feature-card bb-admin-settings__feature-card--${n.status}${n.available||n.is_placeholder||n.is_drm_locked?"":" bb-admin-settings__feature-card--unavailable"}${n.is_placeholder?" bb-admin-settings__feature-card--placeholder":""}${n.is_drm_locked?" bb-admin-settings__feature-card--drm-locked":""}`},(n.is_placeholder&&"not_in_plan"===n.plugin_status||n.is_drm_locked)&&n.upgrade_tier&&(0,o.createElement)("button",{className:`bb-admin-settings__plan-badge bb-admin-settings__plan-badge--${n.upgrade_tier}`,onClick:()=>k({feature:n}),type:"button"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-crown-simple"}),"plus"===n.upgrade_tier?(0,l.__)("UPGRADE SCALE","buddyboss"):"start"===n.upgrade_tier?(0,l.__)("UPGRADE START","buddyboss"):(0,l.__)("UPGRADE LAUNCH","buddyboss")),(0,o.createElement)("div",{className:"bb-admin-settings__feature-body"},(0,o.createElement)("div",{className:"bb-admin-settings__feature-top"},(0,o.createElement)("div",{className:"bb-admin-settings__feature-name"},(0,o.createElement)("div",{className:"bb-admin-settings__feature-icon-frame"},(()=>{if(!n.icon)return(0,o.createElement)("span",{className:"dashicons dashicons-admin-generic"});const e=n.icon.data||n.icon,t=n.icon.type||e.type;if("dashicon"===t){const t=n.icon.slug||e.slug||"dashicons-admin-generic";return(0,o.createElement)("span",{className:`dashicons ${t}`})}if("svg"===t){const t=(0,f.Pl)(n.icon.url||e.url||e.data_uri||e.data&&e.data.url||e.data&&e.data.data_uri||"");if(t&&"#"!==t)return(0,o.createElement)("img",{src:t,alt:n.label,className:"bb-admin-settings__feature-icon-img"})}if("image"===t){const t=(0,f.Pl)(n.icon.url||e.url||e.path||e.data&&e.data.url||e.data&&e.data.path||"");if(t&&"#"!==t)return(0,o.createElement)("img",{src:t,alt:n.label,className:"bb-admin-settings__feature-icon-img"})}if("font"===t){const t=n.icon.class||e.class||e.data&&e.data.class;if(t)return(0,o.createElement)("span",{className:t})}return(0,o.createElement)("span",{className:"dashicons dashicons-admin-generic"})})()),(0,o.createElement)("h3",{className:"bb-admin-settings__feature-title"},n.label))),(0,o.createElement)("p",{className:"bb-admin-settings__feature-description"},n.description||(0,l.__)("No description available.","buddyboss"))),(0,o.createElement)("div",{className:"bb-admin-settings__feature-bottom"},(0,o.createElement)("div",{className:"bb-admin-settings__feature-left"},n.is_placeholder&&"not_installed"===n.plugin_status&&n.plugin_slug?(0,o.createElement)(c.Button,{variant:"secondary",className:"bb-admin-settings__feature-settings-btn"+(n.requires_unmet?" bb-admin-settings__feature-settings-btn--disabled":""),disabled:!!n.requires_unmet,onClick:n.requires_unmet?void 0:()=>j(n,"mosh_addon_install")},(0,l.__)("Install & Activate","buddyboss")):n.is_placeholder&&"installed_inactive"===n.plugin_status&&n.plugin_slug?(0,o.createElement)(c.Button,{variant:"secondary",className:"bb-admin-settings__feature-settings-btn"+(n.requires_unmet?" bb-admin-settings__feature-settings-btn--disabled":""),disabled:!!n.requires_unmet,onClick:n.requires_unmet?void 0:()=>j(n,"mosh_addon_activate")},(0,l.__)("Activate","buddyboss")):n.is_placeholder?(0,o.createElement)(c.Button,{variant:"secondary",className:"bb-admin-settings__feature-settings-btn bb-admin-settings__feature-settings-btn--disabled bb-admin-settings__feature-settings-btn--placeholder",disabled:!0},(0,o.createElement)("i",{className:"bb-icon-settings"}),(0,l.__)("Settings","buddyboss")):n.settings_route?(r=D.has(n.id),i="active"!==n.status||!!n.is_drm_locked||r,(0,o.createElement)(c.Button,{variant:"secondary",className:"bb-admin-settings__feature-settings-btn"+(i?" bb-admin-settings__feature-settings-btn--disabled":""),onClick:()=>{n.is_drm_locked||r||(n.settings_route&&n.settings_route.startsWith("http")&&!n.settings_route.includes("page=bb-settings")?window.location.href=n.settings_route:e(function(e){let t=e;e.includes("?")&&(t=e.split("?")[1]);const n=new URLSearchParams(t),a=n.get("page"),r=n.get("tab"),i=n.get("panel");if("bb-settings"!==a)return"/settings";let o="/settings";return r&&(o+=`/${r}`,i&&(o+=`/${i}`)),o}(n.settings_route)))},disabled:i,"aria-busy":r?"true":void 0},(0,o.createElement)("i",{className:"bb-icon-settings"}),(0,l.__)("Settings","buddyboss"))):null),(0,o.createElement)("div",{className:"bb-admin-settings__feature-right"},(0,o.createElement)(c.ToggleControl,{className:`components-form-toggle--is-big${n.is_placeholder?" bb-admin-settings__toggle--placeholder":""}${n.is_drm_locked?" bb-admin-settings__toggle--drm-locked":""}`,checked:"active"===n.status,onChange:e=>((e,n)=>{if(!a.some((function(t){return t.id===e}))&&!t.some((function(t){return t.id===e&&t.is_drm_locked}))){if(!n){var r=t.find((function(t){return t.id===e}));if(r&&r.confirm_off_message)return void A({feature:r,checked:n})}L(e,n)}})(n.id,e),disabled:!n.available||n.required||!!n.is_placeholder||!!n.is_drm_locked,__nextHasNoMarginBottom:!0}),(0,o.createElement)("span",{className:"screen-reader-text"},(0,l.sprintf)(/* translators: %s: feature label */ /* translators: %s: feature label */ +(()=>{"use strict";var e,t,n,a={1609:e=>{e.exports=window.React},2799:(e,t)=>{var n="function"==typeof Symbol&&Symbol.for,a=n?Symbol.for("react.element"):60103,r=n?Symbol.for("react.portal"):60106,i=n?Symbol.for("react.fragment"):60107,o=n?Symbol.for("react.strict_mode"):60108,s=n?Symbol.for("react.profiler"):60114,l=n?Symbol.for("react.provider"):60109,c=n?Symbol.for("react.context"):60110,d=n?Symbol.for("react.async_mode"):60111,u=n?Symbol.for("react.concurrent_mode"):60111,b=n?Symbol.for("react.forward_ref"):60112,m=n?Symbol.for("react.suspense"):60113,p=n?Symbol.for("react.suspense_list"):60120,f=n?Symbol.for("react.memo"):60115,_=n?Symbol.for("react.lazy"):60116,g=n?Symbol.for("react.block"):60121,v=n?Symbol.for("react.fundamental"):60117,y=n?Symbol.for("react.responder"):60118,h=n?Symbol.for("react.scope"):60119;function E(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case a:switch(e=e.type){case d:case u:case i:case s:case o:case m:return e;default:switch(e=e&&e.$$typeof){case c:case b:case _:case f:case l:return e;default:return t}}case r:return t}}}function w(e){return E(e)===u}t.AsyncMode=d,t.ConcurrentMode=u,t.ContextConsumer=c,t.ContextProvider=l,t.Element=a,t.ForwardRef=b,t.Fragment=i,t.Lazy=_,t.Memo=f,t.Portal=r,t.Profiler=s,t.StrictMode=o,t.Suspense=m,t.isAsyncMode=function(e){return w(e)||E(e)===d},t.isConcurrentMode=w,t.isContextConsumer=function(e){return E(e)===c},t.isContextProvider=function(e){return E(e)===l},t.isElement=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===a},t.isForwardRef=function(e){return E(e)===b},t.isFragment=function(e){return E(e)===i},t.isLazy=function(e){return E(e)===_},t.isMemo=function(e){return E(e)===f},t.isPortal=function(e){return E(e)===r},t.isProfiler=function(e){return E(e)===s},t.isStrictMode=function(e){return E(e)===o},t.isSuspense=function(e){return E(e)===m},t.isValidElementType=function(e){return"string"==typeof e||"function"==typeof e||e===i||e===u||e===s||e===o||e===m||e===p||"object"==typeof e&&null!==e&&(e.$$typeof===_||e.$$typeof===f||e.$$typeof===l||e.$$typeof===c||e.$$typeof===b||e.$$typeof===v||e.$$typeof===y||e.$$typeof===h||e.$$typeof===g)},t.typeOf=E},3957:(e,t,n)=>{function a(e){return e.toString().replace(/\B(?=(\d{3})+(?!\d))/g,",")}function r(e){return e.toLowerCase().replace(/[^\w\u0080-\uFFFF\s-]/g,"").replace(/[\s]+/g,"-").replace(/-+/g,"-").replace(/^-|-$/g,"")}function i(e){var t=[],n=[],a=null,r=function(){n.length>0&&(t.push({type:"row",fields:n}),n=[],a=null)},i={half:2,third:3};return e.forEach((function(e){if("half"===e.layout||"third"===e.layout){a&&a!==e.layout&&r();var o=i[e.layout]||2;n.length>=o&&r(),n.push(e),a=e.layout}else r(),t.push({type:"single",field:e})})),r(),t}function o(e,t){if(!e.conditional)return!0;if("disable"===e.conditional.action)return!0;var n=t[e.conditional.field],a=e.conditional.value;return!0===a||!1===a?(!!n&&"0"!==n&&0!==n)===a:String(n)===String(a)}function s(e,t){if(!e.conditional||"disable"!==e.conditional.action)return!1;if(Array.isArray(e.conditional.fields))return!e.conditional.fields.some((function(e){return!(null==(n=t[e])||""===n||Array.isArray(n)&&0===n.length);var n}));var n=t[e.conditional.field],a=e.conditional.value;return!(!0===a||!1===a?(!!n&&"0"!==n&&0!==n)===a:String(n)===String(a))}function l(e,t){return e.filter((function(e){return e.visible&&o(e,t)}))}function c(e,t,n){var a=n||[],r=t&&"row"===t.type;if("row"===e.type)return r;var i=e.field?e.field.id:"";return"richtext"===(e.field?e.field.type:"")||-1!==a.indexOf(i)||!(r&&t.fields[0]&&t.fields[0].conditional&&t.fields[0].conditional.field===i)&&r}function d(e){var t=[],n=null;return e.forEach((function(e){var a=e.field_group?String(e.field_group):"",r=e.field_group_label?String(e.field_group_label):"";n&&n.group===a||(n={group:a,label:r,fields:[]},t.push(n)),""===n.label&&""!==r&&(n.label=r),n.fields.push(e)})),t}function u(e,t,n){var a={};return e.forEach((function(e){if(!e.readonly){var r=t[e.id];if("richtext"===e.type&&window.tinymce){var i=window.tinymce.get("bb-admin-edit-"+e.id+"-"+n);i&&(r=i.getContent())}var o=null!=r?r:"";a[e.id]=o,a["registered_field_"+e.id]=o}})),a}n.d(t,{BF:()=>r,Vb:()=>i,Xx:()=>u,ZV:()=>a,_t:()=>l,i1:()=>d,lc:()=>c,rl:()=>o,tM:()=>s})},4146:(e,t,n)=>{var a=n(4363),r={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},i={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},o={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},s={};function l(e){return a.isMemo(e)?o:s[e.$$typeof]||r}s[a.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},s[a.Memo]=o;var c=Object.defineProperty,d=Object.getOwnPropertyNames,u=Object.getOwnPropertySymbols,b=Object.getOwnPropertyDescriptor,m=Object.getPrototypeOf,p=Object.prototype;e.exports=function e(t,n,a){if("string"!=typeof n){if(p){var r=m(n);r&&r!==p&&e(t,r,a)}var o=d(n);u&&(o=o.concat(u(n)));for(var s=l(t),f=l(n),_=0;_{e.exports=n(2799)},4516:(e,t,n)=>{n.d(t,{C:()=>r});var a=n(1609);function r({name:e}){return(0,a.createElement)("span",{className:`bb-icons-rl-${e}`})}},4737:(e,t,n)=>{e.exports=n(8989)},4836:e=>{e.exports=window.bbAdminCommon},6045:(e,t,n)=>{n.d(t,{Pl:()=>a.safeUrl,m_:()=>a.sanitizeCustomColumns,pn:()=>a.sanitizeHtml});var a=n(4836)},6087:e=>{e.exports=window.wp.element},6427:e=>{e.exports=window.wp.components},6904:(e,t,n)=>{n.d(t,{A:()=>s,y:()=>l});var a=n(1609),r=n(6087),i=n(7723),o=n(6427);function s(e,t,n){(0,r.useEffect)((function(){if(e&&"success"===e.status){var a=setTimeout((function(){t(null)}),n||3e3);return function(){clearTimeout(a)}}}),[e])}const l=({status:e,message:t,onDismiss:n,showIcon:r=!0})=>(0,a.createElement)("div",{className:`bb-toast bb-toast--${e}`,role:"error"===e?"alert":"status","aria-live":"error"===e?"assertive":"polite"},r&&(0,a.createElement)("div",{className:"bb-toast__icon"},(()=>{switch(e){case"saving":return(0,a.createElement)(o.Spinner,null);case"success":return(0,a.createElement)("i",{className:"bb-icons-rl-fill bb-icons-rl-check-circle"});case"error":return(0,a.createElement)("i",{className:"bb-icons-rl-warning-circle"});default:return null}})()),(0,a.createElement)("div",{className:"bb-toast__message"},t),"error"===e&&n&&(0,a.createElement)(o.Button,{onClick:n,className:"bb-toast__dismiss","aria-label":(0,i.__)("Dismiss","buddyboss"),icon:(0,a.createElement)("i",{className:"bb-icons-rl-x"})}))},7009:(e,t,n)=>{n.d(t,{N:()=>i});var a=n(1609),r=n(7723);const i=({onClick:e,contentId:t})=>(0,a.createElement)("button",{className:"help-icon",onClick:()=>{e&&e(t)},"aria-label":(0,r.__)("Help","buddyboss")},(0,a.createElement)("i",{className:"bb-icons-rl-question"}))},7723:e=>{e.exports=window.wp.i18n},7941:(e,t,n)=>{n.d(t,{C:()=>s});var a=n(1609),r=n(6427),i=n(7723),o=n(6045);function s({isOpen:e,message:t,onConfirm:n,onCancel:s,title:l,confirmLabel:c,cancelLabel:d,isDestructive:u,messageIsHtml:b}){return e?(0,a.createElement)(r.Modal,{title:l||(0,i.__)("Are you sure?","buddyboss"),onRequestClose:s,className:"bb-confirm-toggle-modal bb-admin-settings-modal",shouldCloseOnClickOutside:!1},(0,a.createElement)("div",{className:"bb-admin-settings-modal__body bb-confirm-toggle-modal__body"},b?(0,a.createElement)("div",{className:"bb-confirm-toggle-modal__html-message",dangerouslySetInnerHTML:{__html:(0,o.pn)(t)}}):(0,a.createElement)("p",null,t)),(0,a.createElement)("div",{className:"bb-admin-settings-modal__footer bb-confirm-toggle-modal__footer"},(0,a.createElement)(r.Button,{variant:"secondary",onClick:s},d||(0,i.__)("Cancel","buddyboss")),(0,a.createElement)(r.Button,{variant:"primary",isDestructive:!!u,onClick:n},c||(0,i.__)("OK","buddyboss")))):null}},8136:(e,t,n)=>{function a(e,t,n,r){if(Array.isArray(r)||(r=[]),null!=n)if(n instanceof Blob)e.append(t,n);else if(Array.isArray(n)){if(-1!==r.indexOf(n))return;r.push(n),n.forEach((function(n,i){a(e,t+"["+i+"]",n,r)}))}else if("object"==typeof n){if(-1!==r.indexOf(n))return;r.push(n),Object.keys(n).forEach((function(i){a(e,t+"["+i+"]",n[i],r)}))}else"boolean"==typeof n?e.append(t,n?"1":"0"):e.append(t,n)}function r(e,t,n){t=t||{},n=n||{};var r=window.bbAdminData&&window.bbAdminData.ajaxUrl||"/wp-admin/admin-ajax.php",i=window.bbAdminData&&window.bbAdminData.ajaxNonce||"",o=new FormData;return o.append("action",e),o.append("nonce",i),Object.keys(t).forEach((function(e){a(o,e,t[e])})),fetch(r,{method:"POST",credentials:"same-origin",body:o,signal:n.signal}).then((function(e){return e.ok?e.json():e.json().then((function(t){if(t&&t.data&&t.data.message)throw new Error(t.data.message);throw new Error("HTTP "+e.status+": "+e.statusText)})).catch((function(t){if(!(t instanceof SyntaxError))throw t;throw new Error("HTTP "+e.status+": "+e.statusText)}))}))}function i(){return r("bb_admin_get_features")}n.d(t,{$X:()=>re,A6:()=>Be,AV:()=>Z,B9:()=>H,Bf:()=>be,Bu:()=>Te,Bz:()=>E,CI:()=>O,Cc:()=>B,DE:()=>F,Dm:()=>p,Dx:()=>d,EF:()=>j,F$:()=>x,F3:()=>me,G:()=>Ce,HF:()=>le,HH:()=>$,Hk:()=>_,JK:()=>m,Kl:()=>l,N9:()=>ue,NI:()=>ne,Nk:()=>w,OD:()=>D,Og:()=>ye,P1:()=>u,P5:()=>Ie,PS:()=>ke,Pu:()=>T,RM:()=>N,Rb:()=>pe,SC:()=>S,SQ:()=>de,SR:()=>Oe,Tf:()=>U,U0:()=>q,UG:()=>De,Ug:()=>k,VM:()=>we,WT:()=>C,Wv:()=>fe,Wx:()=>h,YG:()=>ee,ZU:()=>r,ZY:()=>g,Zi:()=>I,aC:()=>ce,ao:()=>f,bd:()=>_e,bn:()=>b,c9:()=>Ae,dU:()=>X,eL:()=>K,f:()=>v,fC:()=>J,gg:()=>xe,gw:()=>A,i:()=>i,iQ:()=>he,jD:()=>V,kn:()=>M,l5:()=>W,lK:()=>oe,my:()=>ie,nH:()=>Y,oL:()=>z,pB:()=>se,rI:()=>ae,ri:()=>Ee,se:()=>R,tb:()=>Pe,tf:()=>te,tq:()=>P,uh:()=>Re,uj:()=>ge,v2:()=>Ne,wj:()=>y,x$:()=>c,xg:()=>L,xs:()=>Se,y1:()=>G,yk:()=>Q,zO:()=>Me});var o=null,s=null;function l(){return o?Promise.resolve(o):s||(s=i().then((function(e){return e.success&&e.data?o=e.data:(s=null,[])})).catch((function(e){throw s=null,e})))}function c(){o=null,s=null}function d(e,t){o&&Array.isArray(o)&&(o=o.map((function(n){return n.id===e?Object.assign({},n,t):n})))}function u(e,t,n){return r("bb_admin_toggle_feature",{feature_id:e,status:t?"active":"inactive"},n||{})}function b(e,t){return r("bb_admin_get_platform_settings",{options:e},t||{})}function m(e,t){return r("bb_admin_save_platform_setting",{option_name:e,option_value:t})}function p(e,t){return r("bb_admin_get_group_types",e||{},t)}function f(e){return r("bb_admin_create_group_type",e)}function _(e,t){return r("bb_admin_update_group_type",Object.assign({type_id:e},t))}function g(e,t){return r("bb_admin_delete_group_type",{type_id:e},t)}function v(e,t){return r("bb_admin_get_groups",e,t)}function y(e){return r("bb_admin_create_group",e)}function h(e,t){return r("bb_admin_get_group",{group_id:e},t)}function E(e,t){return r("bb_admin_save_group",e,t)}function w(e,t,n){return r("bb_admin_get_group_members",Object.assign({group_id:e},t),n)}function N(e){return r("bb_admin_update_group_member",e)}function C(e,t){return r("bb_admin_get_member_types",e||{},t)}function x(e){return r("bb_admin_create_member_type",e)}function k(e,t){return r("bb_admin_update_member_type",Object.assign({},t,{type_id:e}))}function S(e,t){return r("bb_admin_delete_member_type",{type_id:e},t)}function A(e,t){return r("bb_admin_get_group_topics",{group_id:e},t||{})}function D(e,t,n){var a={group_ids:e.join(","),do_action:t};return n&&Object.keys(n).forEach((function(e){a[e]=n[e]})),r("bb_admin_group_bulk_action",a)}function I(e,t){return r("bb_admin_get_forums",e,t)}function O(e,t){return r("bb_admin_get_forum",{forum_id:e},t)}function R(e){return r("bb_admin_create_forum",e)}function P(e,t){return r("bb_admin_save_forum",e,t)}function M(e,t,n){var a={forum_ids:e.join(","),do_action:t};return n&&Object.keys(n).forEach((function(e){a[e]=n[e]})),r("bb_admin_forum_bulk_action",a)}function B(e,t){return r("bb_admin_get_discussions",e,t)}function T(e,t){return r("bb_admin_get_discussion",{topic_id:e},t)}function L(e){return r("bb_admin_create_discussion",e)}function j(e,t){return r("bb_admin_save_discussion",e,t)}function F(e,t,n){var a={topic_ids:e.join(","),do_action:t};return n&&Object.keys(n).forEach((function(e){a[e]=n[e]})),r("bb_admin_discussion_bulk_action",a)}function U(e,t){return r("bb_admin_topic_tag_autocomplete",{search:e},t)}function H(e,t){return r("bb_admin_get_topic_tags",e||{},t||{})}function G(e,t){return r("bb_admin_get_topic_tag",{term_id:e},t||{})}function z(e){return r("bb_admin_create_topic_tag",e)}function V(e,t){return r("bb_admin_save_topic_tag",e,t||{})}function W(e){return r("bb_admin_delete_topic_tag",{term_id:e})}function q(e,t){return r("bb_admin_topic_tag_bulk_action",{term_ids:e.join(","),do_action:t})}function $(e,t){return r("bb_admin_get_replies",e||{},t||{})}function Y(e,t){return r("bb_admin_get_reply",{reply_id:e},t||{})}function J(e){return r("bb_admin_create_reply",e)}function Z(e,t){return r("bb_admin_save_reply",e,t||{})}function K(e){return r("bb_admin_delete_reply",{reply_id:e})}function X(e,t,n){var a={reply_ids:e.join(","),do_action:t};return n&&Object.keys(n).forEach((function(e){a[e]=n[e]})),r("bb_admin_reply_bulk_action",a)}function Q(e){return r("bb_admin_get_profile_field_groups",{},e||{})}function ee(e){return r("bb_admin_create_field_group",e)}function te(e){return r("bb_admin_update_field_group",e)}function ne(e){return r("bb_admin_delete_field_group",{group_id:e})}function ae(e){return r("bb_admin_save_profile_field",e)}function re(e,t){return r("bb_admin_delete_profile_field",{field_id:e},t)}function ie(e,t){return r("bb_admin_reorder_profile_fields",e,t)}function oe(e){return r("bb_admin_get_profile_search_fields",{},e||{})}function se(e){return r("bb_admin_save_profile_search_field",e)}function le(e,t){return r("bb_admin_delete_profile_search_field",e,t)}function ce(e,t){return r("bb_admin_reorder_profile_search_fields",e,t||{})}function de(e,t){return r("bb_admin_get_email_templates",e,t)}function ue(e,t){return r("bb_admin_email_template_bulk_action",{email_ids:e.join(","),do_action:t})}function be(e,t){return r("bb_admin_get_invites",e,t)}function me(e,t){return r("bb_admin_invites_bulk_action",{invite_ids:e.join(","),do_action:t})}function pe(e,t){return r("bb_admin_get_email_template",e,t)}function fe(e,t){return r("bb_admin_save_email_template",e,t)}function _e(e){return r("bb_admin_delete_email_templates",{email_ids:e.join(",")})}function ge(e){return r("bb_admin_bulk_edit_email_templates",e)}var ve=null;function ye(e){return ve?Promise.resolve({success:!0,data:ve}):r("bb_admin_get_email_situations",{},e).then((function(e){return e.success&&e.data&&(ve=e.data),e}))}function he(e){return r("bb_admin_get_email_meta_keys",{},e)}function Ee(e){return r("bb_admin_get_reporting_categories",{},e)}function we(e){return r("bb_admin_create_reporting_category",e)}function Ne(e,t){return r("bb_admin_update_reporting_category",Object.assign({term_id:e},t))}function Ce(e){return r("bb_admin_delete_reporting_category",{term_id:e})}function xe(e,t){return r("bb_admin_get_flagged_members",e||{},t)}function ke(e,t,n){return r("bb_admin_get_member_report",{user_id:e,moderation_id:t},n||{})}function Se(e){return r("bb_admin_suspend_member",{user_id:e})}function Ae(e){return r("bb_admin_unsuspend_member",{user_id:e})}function De(e,t){return r("bb_admin_flagged_members_bulk_action",{bulk_action:e,user_ids:t})}function Ie(e,t){return r("bb_admin_get_reported_content",e||{},t)}function Oe(e,t){return r("bb_admin_get_content_report",{moderation_id:e},t||{})}function Re(e,t){return r("bb_admin_hide_content",{item_id:e,item_type:t})}function Pe(e,t){return r("bb_admin_unhide_content",{item_id:e,item_type:t})}function Me(e){return r("bb_admin_suspend_content_owner",{user_id:e})}function Be(e){return r("bb_admin_unsuspend_content_owner",{user_id:e})}function Te(e,t){return r("bb_admin_reported_content_bulk_action",{bulk_action:e,ids:t})}},8443:e=>{e.exports=window.wp.date},8537:e=>{e.exports=window.wp.htmlEntities},8989:(e,t)=>{var n=60103,a=60106,r=60107,i=60108,o=60114,s=60109,l=60110,c=60112,d=60113,u=60120,b=60115,m=60116;if("function"==typeof Symbol&&Symbol.for){var p=Symbol.for;n=p("react.element"),a=p("react.portal"),r=p("react.fragment"),i=p("react.strict_mode"),o=p("react.profiler"),s=p("react.provider"),l=p("react.context"),c=p("react.forward_ref"),d=p("react.suspense"),u=p("react.suspense_list"),b=p("react.memo"),m=p("react.lazy"),p("react.block"),p("react.server.block"),p("react.fundamental"),p("react.debug_trace_mode"),p("react.legacy_hidden")}t.isContextConsumer=function(e){return function(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case n:switch(e=e.type){case r:case o:case i:case d:case u:return e;default:switch(e=e&&e.$$typeof){case l:case c:case m:case b:case s:return e;default:return t}}case a:return t}}}(e)===l}},9021:(e,t,n)=>{n.d(t,{x:()=>d});var a=n(1609),r=n(6087),i=n(7723),o=n(8136),s=n(6427),l=300,c=0;function d({id:e,value:t,onChange:n,asyncAction:d,asyncExtraParams:u,placeholder:b,disabled:m,initialLabel:p,staticOptions:f}){var _=(0,r.useMemo)((function(){return Array.isArray(f)?f:[]}),[f]),g=(0,r.useCallback)((function(e){for(var t=String(e||""),n=0;n<_.length;n++)if(String(_[n].value)===t)return _[n];return null}),[_]),v=g(t),y=(0,r.useState)((function(){return v?v.label:p||""})),h=y[0],E=y[1],w=(0,r.useState)(-1),N=w[0],C=w[1],x=(0,r.useRef)(null);if(null===x.current){var k=++c;x.current={listbox:"bb-async-select__listbox-"+k,option:function(e){return"bb-async-select__option-"+k+"-"+e}}}var S=(0,r.useState)(""),A=S[0],D=S[1],I=(0,r.useState)(!1),O=I[0],R=I[1],P=(0,r.useState)([]),M=P[0],B=P[1],T=(0,r.useState)(!1),L=T[0],j=T[1],F=(0,r.useState)(1),U=F[0],H=F[1],G=(0,r.useState)(!1),z=G[0],V=G[1],W=(0,r.useState)(!1),q=W[0],$=W[1],Y=(0,r.useRef)(null),J=(0,r.useRef)(null),Z=(0,r.useRef)(null),K=(0,r.useRef)(null),X=(0,r.useRef)(null),Q=(0,r.useCallback)((function(e,t,n){Y.current&&Y.current.abort(),Y.current=new AbortController,n?$(!0):(V(!0),n||B([]));var a={term:e,page:t};u&&Object.keys(u).forEach((function(e){a[e]=u[e]})),(0,o.ZU)(d,a,{signal:Y.current.signal}).then((function(e){if(e.success){var t=e.data;B(n?function(e){return e.concat(t.results||[])}:t.results||[]),j(!!t.has_more)}})).catch((function(e){e&&"AbortError"===e.name||window&&window.console&&"function"==typeof window.console.warn&&window.console.warn("AsyncSelectField fetchResults failed:",e)})).finally((function(){V(!1),$(!1)}))}),[d,u]),ee=(0,r.useRef)({value:String(t||""),label:p||""});(0,r.useEffect)((function(){var e=String(t||""),n=g(t);if(n)return E(n.label),void(ee.current={value:e,label:n.label});if(""===e||"0"===e)return E(""),void(ee.current={value:"",label:""});var a=ee.current;if(p&&p!==a.label&&e!==a.value)return E(p),void(ee.current={value:e,label:p});if(!h||e!==a.value){var r=new AbortController;return(0,o.ZU)(d,{selected_id:t,page:1,term:""},{signal:r.signal}).then((function(t){if(!r.signal.aborted&&t.success&&t.data.results&&t.data.results.length){var n=t.data.results[0].label;E(n),ee.current={value:e,label:n}}})).catch((function(e){e&&"AbortError"===e.name||window&&window.console&&"function"==typeof window.console.warn&&window.console.warn("AsyncSelectField resolve failed:",e)})),function(){r.abort()}}}),[t,p,g]),(0,r.useEffect)((function(){function e(e){Z.current&&!Z.current.contains(e.target)&&(R(!1),D(""))}return document.addEventListener("mousedown",e),function(){document.removeEventListener("mousedown",e)}}),[]);var te=(0,r.useMemo)((function(){if(!_.length)return M;var e=(A||"").trim().toLowerCase(),t=""===e?_:_.filter((function(t){return-1!==String(t.label||"").toLowerCase().indexOf(e)}));if(!t.length)return M;for(var n=Object.create(null),a=0;a=te.length&&C(te.length>0?te.length-1:-1):C(-1)}),[te,O]),(0,r.useEffect)((function(){O&&X.current&&X.current.focus()}),[O]),(0,r.useEffect)((function(){return function(){Y.current&&Y.current.abort(),J.current&&clearTimeout(J.current)}}),[]);var ae=h||b||(0,i.__)("Select…","buddyboss");return(0,a.createElement)("div",{className:"bb-async-select",ref:Z},(0,a.createElement)("div",{className:"bb-async-select__trigger-wrapper"},(0,a.createElement)("button",{type:"button",ref:K,id:e||void 0,className:"bb-async-select__trigger"+(O?" is-open":"")+(h?"":" is-placeholder"),disabled:m,"aria-haspopup":"listbox","aria-expanded":O,"aria-controls":x.current.listbox,onClick:function(){m||(O?R(!1):(R(!0),D(""),H(1),Q("",1,!1)))},onKeyDown:function(e){m||O||"ArrowDown"!==e.key&&"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),R(!0),D(""),H(1),Q("",1,!1))}},(0,a.createElement)("span",{className:"bb-async-select__trigger-label"},ae),(0,a.createElement)("i",{className:"bb-async-select__trigger-chevron bb-icons-rl bb-icons-rl-caret-down","aria-hidden":"true"}))),O&&(0,a.createElement)("div",{className:"bb-async-select__dropdown"},(0,a.createElement)("div",{className:"bb-async-select__search-wrapper"},(0,a.createElement)("i",{className:"bb-async-select__search-icon bb-icons-rl bb-icons-rl-magnifying-glass","aria-hidden":"true"}),(0,a.createElement)("input",{ref:X,type:"search",className:"bb-async-select__search-input",value:A,onChange:function(e){var t=e.target.value;D(t),H(1),J.current&&clearTimeout(J.current),J.current=setTimeout((function(){Q(t,1,!1)}),l)},onKeyDown:function(e){if(!m)return"ArrowDown"===e.key?(e.preventDefault(),O?void(te.length>0&&C((function(e){return e+10&&C((function(e){return e>0?e-1:0})))):"Home"===e.key&&O&&te.length>0?(e.preventDefault(),void C(0)):"End"===e.key&&O&&te.length>0?(e.preventDefault(),void C(te.length-1)):void("Enter"!==e.key?"Escape"===e.key&&O&&(e.preventDefault(),R(!1),D(""),C(-1),K.current&&K.current.focus()):O&&N>=0&&N=0&&N0&&(0,a.createElement)("ul",{className:"bb-async-select__list",role:"listbox",id:x.current.listbox},te.map((function(e,n){var r=e.value===String(t),i=n===N;return(0,a.createElement)("li",{key:e.value,id:x.current.option(n),role:"option","aria-selected":r,className:"bb-async-select__option"+(r?" is-selected":"")+(i?" is-active":"")},(0,a.createElement)("button",{type:"button",tabIndex:-1,onMouseDown:function(t){t.preventDefault(),ne(e)},onMouseEnter:function(){C(n)}},e.label))}))),!z&&L&&(0,a.createElement)("div",{className:"bb-async-select__load-more"},(0,a.createElement)("button",{type:"button",className:"bb-async-select__load-more-btn",onClick:function(){var e=U+1;H(e),Q(A,e,!0)},disabled:q},q?(0,i.__)("Loading…","buddyboss"):(0,i.__)("Load more","buddyboss")))))}},9236:(e,t,n)=>{n.d(t,{JY:()=>cr,sx:()=>Lr,gL:()=>Hr});var a=n(1609),r=n.n(a);function i(e,t){return i=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},i(e,t)}function o(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,i(e,t)}function s(){return s=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0;a--){var r=t[a](e);if(r)return r}return function(t,a){throw new Error("Invalid value of type "+typeof e+" for "+n+" argument when connecting component "+a.wrappedComponentName+".")}}function ne(e,t){return e===t}function ae(e){var t=void 0===e?{}:e,n=t.connectHOC,a=void 0===n?U:n,r=t.mapStateToPropsFactories,i=void 0===r?$:r,o=t.mapDispatchToPropsFactories,l=void 0===o?q:o,c=t.mergePropsFactories,d=void 0===c?J:c,u=t.selectorFactory,b=void 0===u?Q:u;return function(e,t,n,r){void 0===r&&(r={});var o=r,c=o.pure,u=void 0===c||c,m=o.areStatesEqual,p=void 0===m?ne:m,f=o.areOwnPropsEqual,_=void 0===f?G:f,g=o.areStatePropsEqual,v=void 0===g?G:g,y=o.areMergedPropsEqual,h=void 0===y?G:y,E=S(o,ee),w=te(e,i,"mapStateToProps"),N=te(t,l,"mapDispatchToProps"),C=te(n,d,"mergeProps");return a(b,s({methodName:"connect",getDisplayName:function(e){return"Connect("+e+")"},shouldHandleStateChanges:Boolean(e),initMapStateToProps:w,initMapDispatchToProps:N,initMergeProps:C,pure:u,areStatesEqual:p,areOwnPropsEqual:_,areStatePropsEqual:v,areMergedPropsEqual:h},E))}}const re=ae(),ie=window.ReactDOM;var oe,se=n.n(ie);function le(e,t){var n=(0,a.useState)((function(){return{inputs:t,result:e()}}))[0],r=(0,a.useRef)(!0),i=(0,a.useRef)(n),o=r.current||Boolean(t&&i.current.inputs&&function(e,t){if(e.length!==t.length)return!1;for(var n=0;n");return t.callbacks},t.setCallbacks=function(e){t.callbacks=e},t}o(t,e);var n=t.prototype;return n.componentDidMount=function(){this.unbind=Se(window,[{eventName:"error",fn:this.onWindowError}])},n.componentDidCatch=function(e){if(!(e instanceof Ie))throw e;this.setState({})},n.componentWillUnmount=function(){this.unbind()},n.render=function(){return this.props.children(this.setCallbacks)},t}(r().Component),Pe=function(e){return e+1},Me=function(e,t){var n=e.droppableId===t.droppableId,a=Pe(e.index),r=Pe(t.index);return n?"\n You have moved the item from position "+a+"\n to position "+r+"\n ":"\n You have moved the item from position "+a+"\n in list "+e.droppableId+"\n to list "+t.droppableId+"\n in position "+r+"\n "},Be=function(e,t,n){return t.droppableId===n.droppableId?"\n The item "+e+"\n has been combined with "+n.draggableId:"\n The item "+e+"\n in list "+t.droppableId+"\n has been combined with "+n.draggableId+"\n in list "+n.droppableId+"\n "},Te=function(e){return"\n The item has returned to its starting position\n of "+Pe(e.index)+"\n"},Le={dragHandleUsageInstructions:"\n Press space bar to start a drag.\n When dragging you can use the arrow keys to move the item around and escape to cancel.\n Some screen readers may require you to be in focus mode or to use your pass through key\n",onDragStart:function(e){return"\n You have lifted an item in position "+Pe(e.source.index)+"\n"},onDragUpdate:function(e){var t=e.destination;if(t)return Me(e.source,t);var n=e.combine;return n?Be(e.draggableId,e.source,n):"You are over an area that cannot be dropped on"},onDragEnd:function(e){if("CANCEL"===e.reason)return"\n Movement cancelled.\n "+Te(e.source)+"\n ";var t=e.destination,n=e.combine;return t?"\n You have dropped the item.\n "+Me(e.source,t)+"\n ":n?"\n You have dropped the item.\n "+Be(e.draggableId,e.source,n)+"\n ":"\n The item has been dropped while not over a drop area.\n "+Te(e.source)+"\n "}},je={x:0,y:0},Fe=function(e,t){return{x:e.x+t.x,y:e.y+t.y}},Ue=function(e,t){return{x:e.x-t.x,y:e.y-t.y}},He=function(e,t){return e.x===t.x&&e.y===t.y},Ge=function(e){return{x:0!==e.x?-e.x:0,y:0!==e.y?-e.y:0}},ze=function(e,t,n){var a;return void 0===n&&(n=0),(a={})[e]=t,a["x"===e?"y":"x"]=n,a},Ve=function(e,t){return Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2))},We=function(e,t){return Math.min.apply(Math,t.map((function(t){return Ve(e,t)})))},qe=function(e){return function(t){return{x:e(t.x),y:e(t.y)}}},$e=function(e,t){return{top:e.top+t.y,left:e.left+t.x,bottom:e.bottom+t.y,right:e.right+t.x}},Ye=function(e){return[{x:e.left,y:e.top},{x:e.right,y:e.top},{x:e.left,y:e.bottom},{x:e.right,y:e.bottom}]},Je=function(e,t){return t&&t.shouldClipSubject?function(e,t){var n=ue({top:Math.max(t.top,e.top),right:Math.min(t.right,e.right),bottom:Math.min(t.bottom,e.bottom),left:Math.max(t.left,e.left)});return n.width<=0||n.height<=0?null:n}(t.pageMarginBox,e):ue(e)},Ze=function(e){var t=e.page,n=e.withPlaceholder,a=e.axis,r=e.frame,i=function(e,t){return t?$e(e,t.scroll.diff.displacement):e}(t.marginBox,r),o=function(e,t,n){var a;return n&&n.increasedBy?s({},e,((a={})[t.end]=e[t.end]+n.increasedBy[t.line],a)):e}(i,a,n);return{page:t,withPlaceholder:n,active:Je(o,r)}},Ke=function(e,t){e.frame||Oe(!1);var n=e.frame,a=Ue(t,n.scroll.initial),r=Ge(a),i=s({},n,{scroll:{initial:n.scroll.initial,current:t,diff:{value:a,displacement:r},max:n.scroll.max}});return s({},e,{frame:i,subject:Ze({page:e.subject.page,withPlaceholder:e.subject.withPlaceholder,axis:e.axis,frame:i})})};function Xe(e){return Object.values?Object.values(e):Object.keys(e).map((function(t){return e[t]}))}function Qe(e,t){if(e.findIndex)return e.findIndex(t);for(var n=0;ne.bottom,s=a.lefte.right;return!(!o||!s)||o&&i||s&&r}},_t=function(e){var t=pt(e.top,e.bottom),n=pt(e.left,e.right);return function(e){return t(e.top)&&t(e.bottom)&&n(e.left)&&n(e.right)}},gt={direction:"vertical",line:"y",crossAxisLine:"x",start:"top",end:"bottom",size:"height",crossAxisStart:"left",crossAxisEnd:"right",crossAxisSize:"width"},vt={direction:"horizontal",line:"x",crossAxisLine:"y",start:"left",end:"right",size:"width",crossAxisStart:"top",crossAxisEnd:"bottom",crossAxisSize:"height"},yt=function(e){var t=e.target,n=e.destination,a=e.viewport,r=e.withDroppableDisplacement,i=e.isVisibleThroughFrameFn,o=r?function(e,t){var n=t.frame?t.frame.scroll.diff.displacement:je;return $e(e,n)}(t,n):t;return function(e,t,n){return!!t.subject.active&&n(t.subject.active)(e)}(o,n,i)&&function(e,t,n){return n(t)(e)}(o,a,i)},ht=function(e){return yt(s({},e,{isVisibleThroughFrameFn:_t}))};function Et(e){var t=e.afterDragging,n=e.destination,a=e.displacedBy,r=e.viewport,i=e.forceShouldAnimate,o=e.last;return t.reduce((function(e,t){var l=function(e,t){var n=e.page.marginBox,a={top:t.point.y,right:0,bottom:0,left:t.point.x};return ue(be(n,a))}(t,a),c=t.descriptor.id;if(e.all.push(c),!yt(s({},{target:l,destination:n,viewport:r,withDroppableDisplacement:!0},{isVisibleThroughFrameFn:ft})))return e.invisible[t.descriptor.id]=!0,e;var d=function(e,t,n){if("boolean"==typeof n)return n;if(!t)return!0;var a=t.invisible,r=t.visible;if(a[e])return!1;var i=r[e];return!i||i.shouldAnimate}(c,o,i),u={draggableId:c,shouldAnimate:d};return e.visible[c]=u,e}),{all:[],visible:{},invisible:{}})}function wt(e){var t=e.insideDestination,n=e.inHomeList,a=e.displacedBy,r=e.destination,i=function(e,t){if(!e.length)return 0;var n=e[e.length-1].descriptor.index;return t.inHomeList?n:n+1}(t,{inHomeList:n});return{displaced:bt,displacedBy:a,at:{type:"REORDER",destination:{droppableId:r.descriptor.id,index:i}}}}function Nt(e){var t=e.draggable,n=e.insideDestination,a=e.destination,r=e.viewport,i=e.displacedBy,o=e.last,s=e.index,l=e.forceShouldAnimate,c=dt(t,a);if(null==s)return wt({insideDestination:n,inHomeList:c,displacedBy:i,destination:a});var d=et(n,(function(e){return e.descriptor.index===s}));if(!d)return wt({insideDestination:n,inHomeList:c,displacedBy:i,destination:a});var u=ct(t,n),b=n.indexOf(d);return{displaced:Et({afterDragging:u.slice(b),destination:a,displacedBy:i,last:o,viewport:r.frame,forceShouldAnimate:l}),displacedBy:i,at:{type:"REORDER",destination:{droppableId:a.descriptor.id,index:s}}}}function Ct(e,t){return Boolean(t.effected[e])}var xt=function(e,t){return t.margin[e.start]+t.borderBox[e.size]/2},kt=function(e,t,n){return t[e.crossAxisStart]+n.margin[e.crossAxisStart]+n.borderBox[e.crossAxisSize]/2},St=function(e){var t=e.axis,n=e.moveRelativeTo,a=e.isMoving;return ze(t.line,n.marginBox[t.end]+xt(t,a),kt(t,n.marginBox,a))},At=function(e){var t=e.axis,n=e.moveRelativeTo,a=e.isMoving;return ze(t.line,n.marginBox[t.start]-function(e,t){return t.margin[e.end]+t.borderBox[e.size]/2}(t,a),kt(t,n.marginBox,a))},Dt=function(e,t){var n=e.frame;return n?Fe(t,n.scroll.diff.displacement):t},It=function(e){var t=function(e){var t=e.impact,n=e.draggable,a=e.droppable,r=e.draggables,i=e.afterCritical,o=n.page.borderBox.center,s=t.at;return a&&s?"REORDER"===s.type?function(e){var t=e.impact,n=e.draggable,a=e.draggables,r=e.droppable,i=e.afterCritical,o=ot(r.descriptor.id,a),s=n.page,l=r.axis;if(!o.length)return function(e){var t=e.axis,n=e.moveInto,a=e.isMoving;return ze(t.line,n.contentBox[t.start]+xt(t,a),kt(t,n.contentBox,a))}({axis:l,moveInto:r.page,isMoving:s});var c=t.displaced,d=t.displacedBy,u=c.all[0];if(u){var b=a[u];if(Ct(u,i))return At({axis:l,moveRelativeTo:b.page,isMoving:s});var m=ge(b.page,d.point);return At({axis:l,moveRelativeTo:m,isMoving:s})}var p=o[o.length-1];if(p.descriptor.id===n.descriptor.id)return s.borderBox.center;if(Ct(p.descriptor.id,i)){var f=ge(p.page,Ge(i.displacedBy.point));return St({axis:l,moveRelativeTo:f,isMoving:s})}return St({axis:l,moveRelativeTo:p.page,isMoving:s})}({impact:t,draggable:n,draggables:r,droppable:a,afterCritical:i}):function(e){var t=e.afterCritical,n=e.impact,a=e.draggables,r=lt(n);r||Oe(!1);var i=r.draggableId,o=a[i].page.borderBox.center,s=function(e){var t=e.displaced,n=e.afterCritical,a=e.combineWith,r=e.displacedBy,i=Boolean(t.visible[a]||t.invisible[a]);return Ct(a,n)?i?je:Ge(r.point):i?r.point:je}({displaced:n.displaced,afterCritical:t,combineWith:i,displacedBy:n.displacedBy});return Fe(o,s)}({impact:t,draggables:r,afterCritical:i}):o}(e),n=e.droppable;return n?Dt(n,t):t},Ot=function(e,t){var n=Ue(t,e.scroll.initial),a=Ge(n);return{frame:ue({top:t.y,bottom:t.y+e.frame.height,left:t.x,right:t.x+e.frame.width}),scroll:{initial:e.scroll.initial,max:e.scroll.max,current:t,diff:{value:n,displacement:a}}}};function Rt(e,t){return e.map((function(e){return t[e]}))}var Pt=function(e){var t,n,a=e.pageBorderBoxCenter,r=e.draggable,i=(t=e.viewport,n=a,Fe(t.scroll.diff.displacement,n)),o=Ue(i,r.page.borderBox.center);return Fe(r.client.borderBox.center,o)},Mt=function(e){var t=e.draggable,n=e.destination,a=e.newPageBorderBoxCenter,r=e.viewport,i=e.withDroppableDisplacement,o=e.onlyOnMainAxis,l=void 0!==o&&o,c=Ue(a,t.page.borderBox.center),d={target:$e(t.page.borderBox,c),destination:n,withDroppableDisplacement:i,viewport:r};return l?function(e){return yt(s({},e,{isVisibleThroughFrameFn:(t=e.destination.axis,function(e){var n=pt(e.top,e.bottom),a=pt(e.left,e.right);return function(e){return t===gt?n(e.top)&&n(e.bottom):a(e.left)&&a(e.right)}})}));var t}(d):ht(d)},Bt=function(e){var t=e.isMovingForward,n=e.draggable,a=e.destination,r=e.draggables,i=e.previousImpact,o=e.viewport,l=e.previousPageBorderBoxCenter,c=e.previousClientSelection,d=e.afterCritical;if(!a.isEnabled)return null;var u=ot(a.descriptor.id,r),b=dt(n,a),m=function(e){var t=e.isMovingForward,n=e.draggable,a=e.destination,r=e.insideDestination,i=e.previousImpact;if(!a.isCombineEnabled)return null;if(!st(i))return null;function o(e){var t={type:"COMBINE",combine:{draggableId:e,droppableId:a.descriptor.id}};return s({},i,{at:t})}var l=i.displaced.all,c=l.length?l[0]:null;if(t)return c?o(c):null;var d=ct(n,r);if(!c)return d.length?o(d[d.length-1].descriptor.id):null;var u=Qe(d,(function(e){return e.descriptor.id===c}));-1===u&&Oe(!1);var b=u-1;return b<0?null:o(d[b].descriptor.id)}({isMovingForward:t,draggable:n,destination:a,insideDestination:u,previousImpact:i})||function(e){var t=e.isMovingForward,n=e.isInHomeList,a=e.draggable,r=e.draggables,i=e.destination,o=e.insideDestination,s=e.previousImpact,l=e.viewport,c=e.afterCritical,d=s.at;if(d||Oe(!1),"REORDER"===d.type){var u=function(e){var t=e.isMovingForward,n=e.isInHomeList,a=e.insideDestination,r=e.location;if(!a.length)return null;var i=r.index,o=t?i+1:i-1,s=a[0].descriptor.index,l=a[a.length-1].descriptor.index;return o(n?l:l+1)?null:o}({isMovingForward:t,isInHomeList:n,location:d.destination,insideDestination:o});return null==u?null:Nt({draggable:a,insideDestination:o,destination:i,viewport:l,last:s.displaced,displacedBy:s.displacedBy,index:u})}var b=function(e){var t=e.isMovingForward,n=e.draggables,a=e.combine,r=e.afterCritical;if(!e.destination.isCombineEnabled)return null;var i=a.draggableId,o=n[i].descriptor.index;return Ct(i,r)?t?o:o-1:t?o+1:o}({isMovingForward:t,destination:i,displaced:s.displaced,draggables:r,combine:d.combine,afterCritical:c});return null==b?null:Nt({draggable:a,insideDestination:o,destination:i,viewport:l,last:s.displaced,displacedBy:s.displacedBy,index:b})}({isMovingForward:t,isInHomeList:b,draggable:n,draggables:r,destination:a,insideDestination:u,previousImpact:i,viewport:o,afterCritical:d});if(!m)return null;var p=It({impact:m,draggable:n,droppable:a,draggables:r,afterCritical:d});if(Mt({draggable:n,destination:a,newPageBorderBoxCenter:p,viewport:o.frame,withDroppableDisplacement:!1,onlyOnMainAxis:!0}))return{clientSelection:Pt({pageBorderBoxCenter:p,draggable:n,viewport:o}),impact:m,scrollJumpRequest:null};var f=Ue(p,l),_=function(e){var t=e.impact,n=e.viewport,a=e.destination,r=e.draggables,i=e.maxScrollChange,o=Ot(n,Fe(n.scroll.current,i)),l=a.frame?Ke(a,Fe(a.frame.scroll.current,i)):a,c=t.displaced,d=Et({afterDragging:Rt(c.all,r),destination:a,displacedBy:t.displacedBy,viewport:o.frame,last:c,forceShouldAnimate:!1}),u=Et({afterDragging:Rt(c.all,r),destination:l,displacedBy:t.displacedBy,viewport:n.frame,last:c,forceShouldAnimate:!1}),b={},m={},p=[c,d,u];return c.all.forEach((function(e){var t=function(e,t){for(var n=0;n1?d.sort((function(e,t){return Tt(e)[s.start]-Tt(t)[s.start]}))[0]:c.sort((function(e,t){var a=We(n,Ye(Tt(e))),r=We(n,Ye(Tt(t)));return a!==r?a-r:Tt(e)[s.start]-Tt(t)[s.start]}))[0]}({isMovingForward:t,pageBorderBoxCenter:n,source:r,droppables:o,viewport:s});if(!c)return null;var d=ot(c.descriptor.id,i),u=function(e){var t=e.pageBorderBoxCenter,n=e.viewport,a=e.destination,r=e.afterCritical,i=e.insideDestination.filter((function(e){return ht({target:jt(e,r),destination:a,viewport:n.frame,withDroppableDisplacement:!0})})).sort((function(e,n){var i=Ve(t,Dt(a,Lt(e,r))),o=Ve(t,Dt(a,Lt(n,r)));return ia.left&&n.topa.top))return!1;if(Wt(r)(t.center))return!0;var i=e.axis,o=r.center[i.crossAxisLine],s=t[i.crossAxisStart],l=t[i.crossAxisEnd],c=pt(r[i.crossAxisStart],r[i.crossAxisEnd]),d=c(s),u=c(l);return!d&&!u||(d?so)}));return r.length?1===r.length?r[0].descriptor.id:function(e){var t=e.pageBorderBox,n=e.candidates,a=e.draggable.page.borderBox.center,r=n.map((function(e){var n=e.axis,r=ze(e.axis.line,t.center[n.line],e.page.borderBox.center[n.crossAxisLine]);return{id:e.descriptor.id,distance:Ve(a,r)}})).sort((function(e,t){return t.distance-e.distance}));return r[0]?r[0].id:null}({pageBorderBox:t,draggable:n,candidates:r}):null}({pageBorderBox:l,draggable:n,droppables:r});if(!c)return mt;var d=r[c],u=ot(d.descriptor.id,a),b=function(e,t){var n=e.frame;return n?qt(t,n.scroll.diff.value):t}(d,l);return function(e){var t=e.draggable,n=e.pageBorderBoxWithDroppableScroll,a=e.previousImpact,r=e.destination,i=e.insideDestination,o=e.afterCritical;if(!r.isCombineEnabled)return null;var s=r.axis,l=Ft(r.axis,t.displaceBy),c=l.value,d=n[s.start],u=n[s.end],b=et(ct(t,i),(function(e){var t=e.descriptor.id,n=e.page.borderBox,r=n[s.size]/4,i=Ct(t,o),l=$t({displaced:a.displaced,id:t});return i?l?u>n[s.start]+r&&un[s.start]-c+r&&dn[s.start]+c+r&&un[s.start]+r&&dt.descriptor.index?n.descriptor.index-1:n.descriptor.index:null}({draggable:n,closest:et(ct(n,r),(function(e){var t=e.descriptor.id,n=e.page.borderBox.center[l.line],a=Ct(t,s),r=$t({displaced:i,id:t});return a?r?b<=n:u=1500)return.55;var a=In+On*(n/1500);return Number(("CANCEL"===t?.6*a:a).toFixed(2))}({current:r.current.client.offset,destination:g,reason:i});n({type:"DROP_ANIMATE",payload:{newHomeClientOffset:g,dropDuration:y,completed:v}})}else n(hn({completed:v}))}}else n(function(e){return{type:"DROP_PENDING",payload:e}}({reason:i}))}else e(a)}}},Pn=function(){return{x:window.pageXOffset,y:window.pageYOffset}};var Mn=function(e){var t=function(e){var t=e.onWindowScroll,n=Ce((function(){t(Pn())})),a=function(e){return{eventName:"scroll",options:{passive:!0,capture:!1},fn:function(t){t.target!==window&&t.target!==window.document||e()}}}(n),r=ke;function i(){return r!==ke}return{start:function(){i()&&Oe(!1),r=Se(window,[a])},stop:function(){i()||Oe(!1),n.cancel(),r(),r=ke},isActive:i}}({onWindowScroll:function(t){e.dispatch({type:"MOVE_BY_WINDOW_SCROLL",payload:{newScroll:t}})}});return function(e){return function(n){t.isActive()||"INITIAL_PUBLISH"!==n.type||t.start(),t.isActive()&&function(e){return"DROP_COMPLETE"===e.type||"DROP_ANIMATE"===e.type||"FLUSH"===e.type}(n)&&t.stop(),e(n)}}},Bn=function(e,t){t()},Tn=function(e,t){return{draggableId:e.draggable.id,type:e.droppable.type,source:{droppableId:e.droppable.id,index:e.draggable.index},mode:t}},Ln=function(e,t,n,a){if(e){var r=function(e){var t=!1,n=!1,a=setTimeout((function(){n=!0})),r=function(r){t||n||(t=!0,e(r),clearTimeout(a))};return r.wasCalled=function(){return t},r}(n);e(t,{announce:r}),r.wasCalled()||n(a(t))}else n(a(t))},jn=function(e,t){var n=function(e,t){var n,a=(n=[],{add:function(e){var t=setTimeout((function(){return function(e){var t=Qe(n,(function(t){return t.timerId===e}));-1===t&&Oe(!1),n.splice(t,1)[0].callback()}(t)})),a={timerId:t,callback:e};n.push(a)},flush:function(){if(n.length){var e=[].concat(n);n.length=0,e.forEach((function(e){clearTimeout(e.timerId),e.callback()}))}}}),r=null,i=function(n){r||Oe(!1),r=null,Bn(0,(function(){return Ln(e().onDragEnd,n,t,Le.onDragEnd)}))};return{beforeCapture:function(t,n){r&&Oe(!1),Bn(0,(function(){var a=e().onBeforeCapture;a&&a({draggableId:t,mode:n})}))},beforeStart:function(t,n){r&&Oe(!1),Bn(0,(function(){var a=e().onBeforeDragStart;a&&a(Tn(t,n))}))},start:function(n,i){r&&Oe(!1);var o=Tn(n,i);r={mode:i,lastCritical:n,lastLocation:o.source,lastCombine:null},a.add((function(){Bn(0,(function(){return Ln(e().onDragStart,o,t,Le.onDragStart)}))}))},update:function(n,i){var o=st(i),l=lt(i);r||Oe(!1);var c=!function(e,t){if(e===t)return!0;var n=e.draggable.id===t.draggable.id&&e.draggable.droppableId===t.draggable.droppableId&&e.draggable.type===t.draggable.type&&e.draggable.index===t.draggable.index,a=e.droppable.id===t.droppable.id&&e.droppable.type===t.droppable.type;return n&&a}(n,r.lastCritical);c&&(r.lastCritical=n);var d,u,b=(u=o,!(null==(d=r.lastLocation)&&null==u||null!=d&&null!=u&&d.droppableId===u.droppableId&&d.index===u.index));b&&(r.lastLocation=o);var m=!function(e,t){return null==e&&null==t||null!=e&&null!=t&&e.draggableId===t.draggableId&&e.droppableId===t.droppableId}(r.lastCombine,l);if(m&&(r.lastCombine=l),c||b||m){var p=s({},Tn(n,r.mode),{combine:l,destination:o});a.add((function(){Bn(0,(function(){return Ln(e().onDragUpdate,p,t,Le.onDragUpdate)}))}))}},flush:function(){r||Oe(!1),a.flush()},drop:i,abort:function(){if(r){var e=s({},Tn(r.lastCritical,r.mode),{combine:null,destination:null,reason:"CANCEL"});i(e)}}}}(e,t);return function(e){return function(t){return function(a){if("BEFORE_INITIAL_CAPTURE"!==a.type){if("INITIAL_PUBLISH"===a.type){var r=a.payload.critical;return n.beforeStart(r,a.payload.movementMode),t(a),void n.start(r,a.payload.movementMode)}if("DROP_COMPLETE"===a.type){var i=a.payload.completed.result;return n.flush(),t(a),void n.drop(i)}if(t(a),"FLUSH"!==a.type){var o=e.getState();"DRAGGING"===o.phase&&n.update(o.critical,o.impact)}else n.abort()}else n.beforeCapture(a.payload.draggableId,a.payload.movementMode)}}}},Fn=function(e){return function(t){return function(n){if("DROP_ANIMATION_FINISHED"===n.type){var a=e.getState();"DROP_ANIMATING"!==a.phase&&Oe(!1),e.dispatch(hn({completed:a.completed}))}else t(n)}}},Un=function(e){var t=null,n=null;return function(a){return function(r){if("FLUSH"!==r.type&&"DROP_COMPLETE"!==r.type&&"DROP_ANIMATION_FINISHED"!==r.type||(n&&(cancelAnimationFrame(n),n=null),t&&(t(),t=null)),a(r),"DROP_ANIMATE"===r.type){var i={eventName:"scroll",options:{capture:!0,passive:!1,once:!0},fn:function(){"DROP_ANIMATING"===e.getState().phase&&e.dispatch({type:"DROP_ANIMATION_FINISHED",payload:null})}};n=requestAnimationFrame((function(){n=null,t=Se(window,[i])}))}}}},Hn=function(e){return function(t){return function(n){if(t(n),"PUBLISH_WHILE_DRAGGING"===n.type){var a=e.getState();"DROP_PENDING"===a.phase&&(a.isWaiting||e.dispatch(En({reason:a.reason})))}}}},Gn=y,zn=function(e){var t,n=e.dimensionMarshal,a=e.focusMarshal,r=e.styleMarshal,i=e.getResponders,o=e.announce,s=e.autoScroller;return _(on,Gn(function(){for(var e=arguments.length,t=new Array(e),n=0;nt.startScrollingFrom)return 0;if(e<=t.maxScrollValueAt)return 28;if(e===t.startScrollingFrom)return 1;var n=ta({startOfRange:t.maxScrollValueAt,endOfRange:t.startScrollingFrom,current:e}),a=28*ea(1-n);return Math.ceil(a)}(t,n);return 0===i?0:r?Math.max(function(e,t){var n=t,a=aa,r=Date.now()-n;if(r>=aa)return e;if(rt.height,i=n.width>t.width;return i||r?i&&r?null:{x:i?0:a.x,y:r?0:a.y}:a}({container:n,subject:a,proposedScroll:c});return d?He(d,je)?null:d:null},la=qe((function(e){return 0===e?0:e>0?1:-1})),ca=(Yn=function(e,t){return e<0?e:e>t?e-t:0},function(e){var t=e.current,n=e.max,a=e.change,r=Fe(t,a),i={x:Yn(r.x,n.x),y:Yn(r.y,n.y)};return He(i,je)?null:i}),da=function(e){var t=e.max,n=e.current,a=e.change,r={x:Math.max(n.x,t.x),y:Math.max(n.y,t.y)},i=la(a),o=ca({max:r,current:n,change:i});return!o||0!==i.x&&0===o.x||0!==i.y&&0===o.y},ua=function(e,t){return da({current:e.scroll.current,max:e.scroll.max,change:t})},ba=function(e,t){var n=e.frame;return!!n&&da({current:n.scroll.current,max:n.scroll.max,change:t})},ma=function(e){var t=e.state,n=e.dragStartTime,a=e.shouldUseTimeDampening,r=e.scrollWindow,i=e.scrollDroppable,o=t.current.page.borderBoxCenter,s=t.dimensions.draggables[t.critical.draggable.id].page.marginBox;if(t.isWindowScrollAllowed){var l=function(e){var t=e.viewport,n=e.subject,a=e.center,r=e.shouldUseTimeDampening,i=sa({dragStartTime:e.dragStartTime,container:t.frame,subject:n,center:a,shouldUseTimeDampening:r});return i&&ua(t,i)?i:null}({dragStartTime:n,viewport:t.viewport,subject:s,center:o,shouldUseTimeDampening:a});if(l)return void r(l)}var c=function(e){var t=e.center,n=e.destination,a=e.droppables;if(n){var r=a[n];return r.frame?r:null}var i=function(e,t){var n=et(Qn(t),(function(t){return t.frame||Oe(!1),Wt(t.frame.pageMarginBox)(e)}));return n}(t,a);return i}({center:o,destination:Gt(t.impact),droppables:t.dimensions.droppables});if(c){var d=function(e){var t=e.droppable,n=e.subject,a=e.center,r=e.dragStartTime,i=e.shouldUseTimeDampening,o=t.frame;if(!o)return null;var s=sa({dragStartTime:r,container:o.pageMarginBox,subject:n,center:a,shouldUseTimeDampening:i});return s&&ba(t,s)?s:null}({dragStartTime:n,droppable:c,subject:s,center:o,shouldUseTimeDampening:a});d&&i(c.descriptor.id,d)}},pa=function(e){var t=e.move,n=e.scrollDroppable,a=e.scrollWindow;return function(e){var r=e.scrollJumpRequest;if(r){var i=Gt(e.impact);i||Oe(!1);var o=function(e,t){if(!ba(e,t))return t;var a=function(e,t){var n=e.frame;return n&&ba(e,t)?ca({current:n.scroll.current,max:n.scroll.max,change:t}):null}(e,t);if(!a)return n(e.descriptor.id,t),null;var r=Ue(t,a);return n(e.descriptor.id,r),Ue(t,r)}(e.dimensions.droppables[i],r);if(o){var s=e.viewport,l=function(e,t,n){if(!e)return n;if(!ua(t,n))return n;var r=function(e,t){if(!ua(e,t))return null;var n=e.scroll.max,a=e.scroll.current;return ca({current:a,max:n,change:t})}(t,n);if(!r)return a(n),null;var i=Ue(n,r);return a(i),Ue(n,i)}(e.isWindowScrollAllowed,s,o);l&&function(e,n){var a=Fe(e.current.client.selection,n);t({client:a})}(e,l)}}}},fa=function(e){var t=e.scrollDroppable,n=e.scrollWindow,a=e.move,r=function(e){var t=e.scrollDroppable,n=Ce(e.scrollWindow),a=Ce(t),r=null,i=function(e){r||Oe(!1);var t=r,i=t.shouldUseTimeDampening,o=t.dragStartTime;ma({state:e,scrollWindow:n,scrollDroppable:a,dragStartTime:o,shouldUseTimeDampening:i})};return{start:function(e){r&&Oe(!1);var t=Date.now(),n=!1,a=function(){n=!0};ma({state:e,dragStartTime:0,shouldUseTimeDampening:!1,scrollWindow:a,scrollDroppable:a}),r={dragStartTime:t,shouldUseTimeDampening:n},n&&i(e)},stop:function(){r&&(n.cancel(),a.cancel(),r=null)},scroll:i}}({scrollWindow:n,scrollDroppable:t}),i=pa({move:a,scrollWindow:n,scrollDroppable:t});return{scroll:function(e){"DRAGGING"===e.phase&&("FLUID"!==e.movementMode?e.scrollJumpRequest&&i(e):r.scroll(e))},start:r.start,stop:r.stop}},_a="data-rbd",ga={base:Jn=_a+"-drag-handle",draggableId:Jn+"-draggable-id",contextId:Jn+"-context-id"},va=function(){var e=_a+"-draggable";return{base:e,contextId:e+"-context-id",id:e+"-id"}}(),ya=function(){var e=_a+"-droppable";return{base:e,contextId:e+"-context-id",id:e+"-id"}}(),ha={contextId:_a+"-scroll-container-context-id"},Ea=function(e,t){return e.map((function(e){var n=e.styles[t];return n?e.selector+" { "+n+" }":""})).join(" ")},wa=function(e){var t,n,a,r=(t=e,function(e){return"["+e+'="'+t+'"]'}),i=(n="\n cursor: -webkit-grab;\n cursor: grab;\n ",{selector:r(ga.contextId),styles:{always:"\n -webkit-touch-callout: none;\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n touch-action: manipulation;\n ",resting:n,dragging:"pointer-events: none;",dropAnimating:n}}),o=[(a="\n transition: "+Sn.outOfTheWay+";\n ",{selector:r(va.contextId),styles:{dragging:a,dropAnimating:a,userCancel:a}}),i,{selector:r(ya.contextId),styles:{always:"overflow-anchor: none;"}},{selector:"body",styles:{dragging:"\n cursor: grabbing;\n cursor: -webkit-grabbing;\n user-select: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n overflow-anchor: none;\n "}}];return{always:Ea(o,"always"),resting:Ea(o,"resting"),dragging:Ea(o,"dragging"),dropAnimating:Ea(o,"dropAnimating"),userCancel:Ea(o,"userCancel")}},Na="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement?a.useLayoutEffect:a.useEffect,Ca=function(){var e=document.querySelector("head");return e||Oe(!1),e},xa=function(e){var t=document.createElement("style");return e&&t.setAttribute("nonce",e),t.type="text/css",t},ka=function(e){return e&&e.ownerDocument?e.ownerDocument.defaultView:window};function Sa(e){return e instanceof ka(e).HTMLElement}function Aa(){var e={draggables:{},droppables:{}},t=[];function n(e){t.length&&t.forEach((function(t){return t(e)}))}function a(t){return e.draggables[t]||null}function r(t){return e.droppables[t]||null}return{draggable:{register:function(t){e.draggables[t.descriptor.id]=t,n({type:"ADDITION",value:t})},update:function(t,n){var a=e.draggables[n.descriptor.id];a&&a.uniqueId===t.uniqueId&&(delete e.draggables[n.descriptor.id],e.draggables[t.descriptor.id]=t)},unregister:function(t){var r=t.descriptor.id,i=a(r);i&&t.uniqueId===i.uniqueId&&(delete e.draggables[r],n({type:"REMOVAL",value:t}))},getById:function(e){var t=a(e);return t||Oe(!1),t},findById:a,exists:function(e){return Boolean(a(e))},getAllByType:function(t){return Xe(e.draggables).filter((function(e){return e.descriptor.type===t}))}},droppable:{register:function(t){e.droppables[t.descriptor.id]=t},unregister:function(t){var n=r(t.descriptor.id);n&&t.uniqueId===n.uniqueId&&delete e.droppables[t.descriptor.id]},getById:function(e){var t=r(e);return t||Oe(!1),t},findById:r,exists:function(e){return Boolean(r(e))},getAllByType:function(t){return Xe(e.droppables).filter((function(e){return e.descriptor.type===t}))}},subscribe:function(e){return t.push(e),function(){var n=t.indexOf(e);-1!==n&&t.splice(n,1)}},clean:function(){e.draggables={},e.droppables={},t.length=0}}}var Da=r().createContext(null),Ia=function(){var e=document.body;return e||Oe(!1),e},Oa={position:"absolute",width:"1px",height:"1px",margin:"-1px",border:"0",padding:"0",overflow:"hidden",clip:"rect(0 0 0 0)","clip-path":"inset(100%)"},Ra=function(e){return"rbd-announcement-"+e},Pa=0,Ma={separator:"::"};function Ba(e,t){return void 0===t&&(t=Ma),ce((function(){return""+e+t.separator+Pa++}),[t.separator,e])}var Ta=r().createContext(null);function La(e){var t=(0,a.useRef)(e);return(0,a.useEffect)((function(){t.current=e})),t}var ja,Fa,Ua=((ja={})[13]=!0,ja[9]=!0,ja),Ha=function(e){Ua[e.keyCode]&&e.preventDefault()},Ga=function(){var e="visibilitychange";return"undefined"==typeof document?e:et([e,"ms"+e,"webkit"+e,"moz"+e,"o"+e],(function(e){return"on"+e in document}))||e}(),za={type:"IDLE"};function Va(){}var Wa=((Fa={})[34]=!0,Fa[33]=!0,Fa[36]=!0,Fa[35]=!0,Fa);var qa={type:"IDLE"},$a={input:!0,button:!0,textarea:!0,select:!0,option:!0,optgroup:!0,video:!0,audio:!0};function Ya(e,t){if(null==t)return!1;if(Boolean($a[t.tagName.toLowerCase()]))return!0;var n=t.getAttribute("contenteditable");return"true"===n||""===n||t!==e&&Ya(e,t.parentElement)}function Ja(e,t){var n=t.target;return!!Sa(n)&&Ya(e,n)}var Za=function(e){return ue(e.getBoundingClientRect()).center},Ka=function(){var e="matches";return"undefined"==typeof document?e:et([e,"msMatchesSelector","webkitMatchesSelector"],(function(e){return e in Element.prototype}))||e}();function Xa(e,t){return null==e?null:e[Ka](t)?e:Xa(e.parentElement,t)}function Qa(e,t){return e.closest?e.closest(t):Xa(e,t)}function er(e){e.preventDefault()}function tr(e){var t=e.expected,n=e.phase,a=e.isLockActive;return e.shouldWarn,!!a()&&t===n}function nr(e){var t=e.lockAPI,n=e.store,a=e.registry,r=e.draggableId;if(t.isClaimed())return!1;var i=a.draggable.findById(r);return!!i&&!!i.options.isEnabled&&!!Kn(n.getState(),r)}var ar=[function(e){var t=(0,a.useRef)(za),n=(0,a.useRef)(ke),r=ce((function(){return{eventName:"mousedown",fn:function(t){if(!t.defaultPrevented&&0===t.button&&!(t.ctrlKey||t.metaKey||t.shiftKey||t.altKey)){var a=e.findClosestDraggableId(t);if(a){var r=e.tryGetLock(a,s,{sourceEvent:t});if(r){t.preventDefault();var i={x:t.clientX,y:t.clientY};n.current(),d(r,i)}}}}}}),[e]),i=ce((function(){return{eventName:"webkitmouseforcewillbegin",fn:function(t){if(!t.defaultPrevented){var n=e.findClosestDraggableId(t);if(n){var a=e.findOptionsForDraggable(n);a&&(a.shouldRespectForcePress||e.canGetLock(n)&&t.preventDefault())}}}}}),[e]),o=de((function(){n.current=Se(window,[i,r],{passive:!1,capture:!0})}),[i,r]),s=de((function(){"IDLE"!==t.current.type&&(t.current=za,n.current(),o())}),[o]),l=de((function(){var e=t.current;s(),"DRAGGING"===e.type&&e.actions.cancel({shouldBlockNextClick:!0}),"PENDING"===e.type&&e.actions.abort()}),[s]),c=de((function(){var e=function(e){var t=e.cancel,n=e.completed,a=e.getPhase,r=e.setPhase;return[{eventName:"mousemove",fn:function(e){var t=e.button,n=e.clientX,i=e.clientY;if(0===t){var o={x:n,y:i},s=a();if("DRAGGING"===s.type)return e.preventDefault(),void s.actions.move(o);if("PENDING"!==s.type&&Oe(!1),l=s.point,c=o,Math.abs(c.x-l.x)>=5||Math.abs(c.y-l.y)>=5){var l,c;e.preventDefault();var d=s.actions.fluidLift(o);r({type:"DRAGGING",actions:d})}}}},{eventName:"mouseup",fn:function(e){var r=a();"DRAGGING"===r.type?(e.preventDefault(),r.actions.drop({shouldBlockNextClick:!0}),n()):t()}},{eventName:"mousedown",fn:function(e){"DRAGGING"===a().type&&e.preventDefault(),t()}},{eventName:"keydown",fn:function(e){if("PENDING"!==a().type)return 27===e.keyCode?(e.preventDefault(),void t()):void Ha(e);t()}},{eventName:"resize",fn:t},{eventName:"scroll",options:{passive:!0,capture:!1},fn:function(){"PENDING"===a().type&&t()}},{eventName:"webkitmouseforcedown",fn:function(e){var n=a();"IDLE"===n.type&&Oe(!1),n.actions.shouldRespectForcePress()?t():e.preventDefault()}},{eventName:Ga,fn:t}]}({cancel:l,completed:s,getPhase:function(){return t.current},setPhase:function(e){t.current=e}});n.current=Se(window,e,{capture:!0,passive:!1})}),[l,s]),d=de((function(e,n){"IDLE"!==t.current.type&&Oe(!1),t.current={type:"PENDING",point:n,actions:e},c()}),[c]);Na((function(){return o(),function(){n.current()}}),[o])},function(e){var t=(0,a.useRef)(Va),n=ce((function(){return{eventName:"keydown",fn:function(n){if(!n.defaultPrevented&&32===n.keyCode){var a=e.findClosestDraggableId(n);if(a){var i=e.tryGetLock(a,l,{sourceEvent:n});if(i){n.preventDefault();var o=!0,s=i.snapLift();t.current(),t.current=Se(window,function(e,t){function n(){t(),e.cancel()}return[{eventName:"keydown",fn:function(a){return 27===a.keyCode?(a.preventDefault(),void n()):32===a.keyCode?(a.preventDefault(),t(),void e.drop()):40===a.keyCode?(a.preventDefault(),void e.moveDown()):38===a.keyCode?(a.preventDefault(),void e.moveUp()):39===a.keyCode?(a.preventDefault(),void e.moveRight()):37===a.keyCode?(a.preventDefault(),void e.moveLeft()):void(Wa[a.keyCode]?a.preventDefault():Ha(a))}},{eventName:"mousedown",fn:n},{eventName:"mouseup",fn:n},{eventName:"click",fn:n},{eventName:"touchstart",fn:n},{eventName:"resize",fn:n},{eventName:"wheel",fn:n,options:{passive:!0}},{eventName:Ga,fn:n}]}(s,l),{capture:!0,passive:!1})}}}function l(){o||Oe(!1),o=!1,t.current(),r()}}}}),[e]),r=de((function(){t.current=Se(window,[n],{passive:!1,capture:!0})}),[n]);Na((function(){return r(),function(){t.current()}}),[r])},function(e){var t=(0,a.useRef)(qa),n=(0,a.useRef)(ke),r=de((function(){return t.current}),[]),i=de((function(e){t.current=e}),[]),o=ce((function(){return{eventName:"touchstart",fn:function(t){if(!t.defaultPrevented){var a=e.findClosestDraggableId(t);if(a){var r=e.tryGetLock(a,l,{sourceEvent:t});if(r){var i=t.touches[0],o={x:i.clientX,y:i.clientY};n.current(),b(r,o)}}}}}}),[e]),s=de((function(){n.current=Se(window,[o],{capture:!0,passive:!1})}),[o]),l=de((function(){var e=t.current;"IDLE"!==e.type&&("PENDING"===e.type&&clearTimeout(e.longPressTimerId),i(qa),n.current(),s())}),[s,i]),c=de((function(){var e=t.current;l(),"DRAGGING"===e.type&&e.actions.cancel({shouldBlockNextClick:!0}),"PENDING"===e.type&&e.actions.abort()}),[l]),d=de((function(){var e={capture:!0,passive:!1},t={cancel:c,completed:l,getPhase:r},a=Se(window,function(e){var t=e.cancel,n=e.completed,a=e.getPhase;return[{eventName:"touchmove",options:{capture:!1},fn:function(e){var n=a();if("DRAGGING"===n.type){n.hasMoved=!0;var r=e.touches[0],i={x:r.clientX,y:r.clientY};e.preventDefault(),n.actions.move(i)}else t()}},{eventName:"touchend",fn:function(e){var r=a();"DRAGGING"===r.type?(e.preventDefault(),r.actions.drop({shouldBlockNextClick:!0}),n()):t()}},{eventName:"touchcancel",fn:function(e){"DRAGGING"===a().type?(e.preventDefault(),t()):t()}},{eventName:"touchforcechange",fn:function(e){var n=a();"IDLE"===n.type&&Oe(!1);var r=e.touches[0];if(r&&r.force>=.15){var i=n.actions.shouldRespectForcePress();if("PENDING"!==n.type)return i?n.hasMoved?void e.preventDefault():void t():void e.preventDefault();i&&t()}}},{eventName:Ga,fn:t}]}(t),e),i=Se(window,function(e){var t=e.cancel,n=e.getPhase;return[{eventName:"orientationchange",fn:t},{eventName:"resize",fn:t},{eventName:"contextmenu",fn:function(e){e.preventDefault()}},{eventName:"keydown",fn:function(e){"DRAGGING"===n().type?(27===e.keyCode&&e.preventDefault(),t()):t()}},{eventName:Ga,fn:t}]}(t),e);n.current=function(){a(),i()}}),[c,r,l]),u=de((function(){var e=r();"PENDING"!==e.type&&Oe(!1);var t=e.actions.fluidLift(e.point);i({type:"DRAGGING",actions:t,hasMoved:!1})}),[r,i]),b=de((function(e,t){"IDLE"!==r().type&&Oe(!1);var n=setTimeout(u,120);i({type:"PENDING",point:t,actions:e,longPressTimerId:n}),d()}),[d,r,i,u]);Na((function(){return s(),function(){n.current();var e=r();"PENDING"===e.type&&(clearTimeout(e.longPressTimerId),i(qa))}}),[r,s,i]),Na((function(){return Se(window,[{eventName:"touchmove",fn:function(){},options:{capture:!1,passive:!1}}])}),[])}];function rr(e){var t=e.contextId,n=e.store,r=e.registry,i=e.customSensors,o=e.enableDefaultSensors,l=[].concat(o?ar:[],i||[]),c=(0,a.useState)((function(){return function(){var e=null;function t(){e||Oe(!1),e=null}return{isClaimed:function(){return Boolean(e)},isActive:function(t){return t===e},claim:function(t){e&&Oe(!1);var n={abandon:t};return e=n,n},release:t,tryAbandon:function(){e&&(e.abandon(),t())}}}()}))[0],d=de((function(e,t){e.isDragging&&!t.isDragging&&c.tryAbandon()}),[c]);Na((function(){var e=n.getState();return n.subscribe((function(){var t=n.getState();d(e,t),e=t}))}),[c,n,d]),Na((function(){return c.tryAbandon}),[c.tryAbandon]);for(var u=de((function(e){return nr({lockAPI:c,registry:r,store:n,draggableId:e})}),[c,r,n]),b=de((function(e,a,i){return function(e){var t=e.lockAPI,n=e.contextId,a=e.store,r=e.registry,i=e.draggableId,o=e.forceSensorStop,l=e.sourceEvent;if(!nr({lockAPI:t,store:a,registry:r,draggableId:i}))return null;var c=r.draggable.getById(i),d=function(e,t){var n="["+va.contextId+'="'+e+'"]',a=et(tt(document.querySelectorAll(n)),(function(e){return e.getAttribute(va.id)===t}));return a&&Sa(a)?a:null}(n,c.descriptor.id);if(!d)return null;if(l&&!c.options.canDragInteractiveElements&&Ja(d,l))return null;var u=t.claim(o||ke),b="PRE_DRAG";function m(){return c.options.shouldRespectForcePress}function p(){return t.isActive(u)}var f=function(e,t){tr({expected:e,phase:b,isLockActive:p,shouldWarn:!0})&&a.dispatch(t())}.bind(null,"DRAGGING");function _(e){function n(){t.release(),b="COMPLETED"}function r(t,r){if(void 0===r&&(r={shouldBlockNextClick:!1}),e.cleanup(),r.shouldBlockNextClick){var i=Se(window,[{eventName:"click",fn:er,options:{once:!0,passive:!1,capture:!0}}]);setTimeout(i)}n(),a.dispatch(En({reason:t}))}return"PRE_DRAG"!==b&&(n(),"PRE_DRAG"!==b&&Oe(!1)),a.dispatch(sn(e.liftActionArgs)),b="DRAGGING",s({isActive:function(){return tr({expected:"DRAGGING",phase:b,isLockActive:p,shouldWarn:!1})},shouldRespectForcePress:m,drop:function(e){return r("DROP",e)},cancel:function(e){return r("CANCEL",e)}},e.actions)}return{isActive:function(){return tr({expected:"PRE_DRAG",phase:b,isLockActive:p,shouldWarn:!1})},shouldRespectForcePress:m,fluidLift:function(e){var t=Ce((function(e){f((function(){return mn({client:e})}))}));return s({},_({liftActionArgs:{id:i,clientSelection:e,movementMode:"FLUID"},cleanup:function(){return t.cancel()},actions:{move:t}}),{move:t})},snapLift:function(){var e={moveUp:function(){return f(pn)},moveRight:function(){return f(gn)},moveDown:function(){return f(fn)},moveLeft:function(){return f(vn)}};return _({liftActionArgs:{id:i,clientSelection:Za(d),movementMode:"SNAP"},cleanup:ke,actions:e})},abort:function(){tr({expected:"PRE_DRAG",phase:b,isLockActive:p,shouldWarn:!0})&&t.release()}}}({lockAPI:c,registry:r,contextId:t,store:n,draggableId:e,forceSensorStop:a,sourceEvent:i&&i.sourceEvent?i.sourceEvent:null})}),[t,c,r,n]),m=de((function(e){return function(e,t){var n=function(e,t){var n,a=t.target;if(!((n=a)instanceof ka(n).Element))return null;var r=function(e){return"["+ga.contextId+'="'+e+'"]'}(e),i=Qa(a,r);return i&&Sa(i)?i:null}(e,t);return n?n.getAttribute(ga.draggableId):null}(t,e)}),[t]),p=de((function(e){var t=r.draggable.findById(e);return t?t.options:null}),[r.draggable]),f=de((function(){c.isClaimed()&&(c.tryAbandon(),"IDLE"!==n.getState().phase&&n.dispatch(yn()))}),[c,n]),_=de(c.isClaimed,[c]),g=ce((function(){return{canGetLock:u,tryGetLock:b,findClosestDraggableId:m,findOptionsForDraggable:p,tryReleaseLock:f,isLockClaimed:_}}),[u,b,m,p,f,_]),v=0;v{function a(e,t){var n=[];if(t<=7)for(var a=1;a<=t;a++)n.push(a);else{n.push(1),e>4&&n.push("...");var r=Math.max(2,e-1),i=Math.min(t-1,e+1);e<=3&&(i=Math.min(t-1,5)),e>=t-2&&(r=Math.max(2,t-5+1));for(var o=r;o<=i;o++)n.push(o);ea})}},r={};function i(e){var t=r[e];if(void 0!==t)return t.exports;var n=r[e]={exports:{}};return a[e](n,n.exports,i),n.exports}i.m=a,i.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return i.d(t,{a:t}),t},t=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,i.t=function(n,a){if(1&a&&(n=this(n)),8&a)return n;if("object"==typeof n&&n){if(4&a&&n.__esModule)return n;if(16&a&&"function"==typeof n.then)return n}var r=Object.create(null);i.r(r);var o={};e=e||[null,t({}),t([]),t(t)];for(var s=2&a&&n;"object"==typeof s&&!~e.indexOf(s);s=t(s))Object.getOwnPropertyNames(s).forEach((e=>o[e]=()=>n[e]));return o.default=()=>n,i.d(r,o),r},i.d=(e,t)=>{for(var n in t)i.o(t,n)&&!i.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,n)=>(i.f[n](e,t),t)),[])),i.u=e=>e+".js",i.miniCssF=e=>{},i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n={},i.l=(e,t,a,r)=>{if(n[e])n[e].push(t);else{var o,s;if(void 0!==a)for(var l=document.getElementsByTagName("script"),c=0;c{o.onerror=o.onload=null,clearTimeout(b);var r=n[e];if(delete n[e],o.parentNode&&o.parentNode.removeChild(o),r&&r.forEach((e=>e(a))),t)return t(a)},b=setTimeout(u.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=u.bind(null,o.onerror),o.onload=u.bind(null,o.onload),s&&document.head.appendChild(o)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;i.g.importScripts&&(e=i.g.location+"");var t=i.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var n=t.getElementsByTagName("script");if(n.length)for(var a=n.length-1;a>-1&&(!e||!/^http(s?):/.test(e));)e=n[a--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),i.p=e})(),(()=>{var e={57:0};i.f.j=(t,n)=>{var a=i.o(e,t)?e[t]:void 0;if(0!==a)if(a)n.push(a[2]);else{var r=new Promise(((n,r)=>a=e[t]=[n,r]));n.push(a[2]=r);var o=i.p+i.u(t),s=new Error;i.l(o,(n=>{if(i.o(e,t)&&(0!==(a=e[t])&&(e[t]=void 0),a)){var r=n&&("load"===n.type?"missing":n.type),o=n&&n.target&&n.target.src;s.message="Loading chunk "+t+" failed.\n("+r+": "+o+")",s.name="ChunkLoadError",s.type=r,s.request=o,a[1](s)}}),"chunk-"+t,t)}};var t=(t,n)=>{var a,r,[o,s,l]=n,c=0;if(o.some((t=>0!==e[t]))){for(a in s)i.o(s,a)&&(i.m[a]=s[a]);l&&l(i)}for(t&&t(n);cdelete u[e]))}var f=i(6045),_=i(6904);function g({media:e,alt:t}){if(!e||!e.url)return null;var n=(0,f.Pl)(e.url),a=e.poster?(0,f.Pl)(e.poster):"",r="bb-upgrade-modal__image-wrapper";return"youtube"!==e.type&&"vimeo"!==e.type&&"mp4"!==e.type||(r+=" bb-upgrade-modal__image-wrapper--video"),"youtube"===e.type||"vimeo"===e.type?(0,o.createElement)("div",{className:r},(0,o.createElement)("iframe",{src:n,title:t,className:"bb-upgrade-modal__video",frameBorder:"0",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowFullScreen:!0})):"mp4"===e.type?(0,o.createElement)("div",{className:r},(0,o.createElement)("video",{src:n,poster:a||void 0,className:"bb-upgrade-modal__video",autoPlay:!0,muted:!0,loop:!0,playsInline:!0,disablePictureInPicture:!0,controlsList:"nodownload nofullscreen noremoteplayback noplaybackrate"})):(0,o.createElement)("div",{className:r},(0,o.createElement)("img",{src:n,alt:t,className:"bb-upgrade-modal__image"}))}function v({feature:e,onClose:t}){if(!e)return null;var n;n="plus"===e.upgrade_tier?(0,l.__)("UPGRADE SCALE","buddyboss"):"start"===e.upgrade_tier?(0,l.__)("UPGRADE START","buddyboss"):(0,l.__)("UPGRADE LAUNCH","buddyboss");var a=e.upgrade_description||e.description||"",r=function(e){return e.upgrade_media&&e.upgrade_media.type?e.upgrade_media:e.upgrade_image_url?{type:"image",url:e.upgrade_image_url,poster:""}:null}(e);return(0,o.createElement)(c.Modal,{title:e.label,onRequestClose:t,className:"bb-upgrade-modal bb-admin-settings-modal",shouldCloseOnClickOutside:!0},(0,o.createElement)("div",{className:"bb-upgrade-modal__body"},(0,o.createElement)(g,{media:r,alt:e.label}),(0,o.createElement)("div",{className:"bb-upgrade-modal__content"},e.upgrade_title&&(0,o.createElement)("h3",{className:"bb-upgrade-modal__title"},e.upgrade_title),(0,o.createElement)("p",{className:"bb-upgrade-modal__description",dangerouslySetInnerHTML:{__html:(0,f.pn)(a)}}),(0,o.createElement)("a",{href:(0,f.Pl)(e.upgrade_url)||"https://www.buddyboss.com/pricing/",target:"_blank",rel:"noopener noreferrer",className:`bb-upgrade-modal__cta bb-upgrade-modal__cta--${e.upgrade_tier||"plus"}`},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-crown-simple"}),n))))}var y=i(7941);function h({onNavigate:e}){const[t,n]=(0,s.useState)([]),[a,r]=(0,s.useState)([]),[i,u]=(0,s.useState)(!0),[b,m]=(0,s.useState)("all"),[g,h]=(0,s.useState)(""),[E,w]=(0,s.useState)(""),[N,C]=(0,s.useState)(null),[x,k]=(0,s.useState)(null),[S,A]=(0,s.useState)(null),[D,I]=(0,s.useState)((()=>new Set));(0,s.useEffect)((()=>{(0,d.Kl)().then((e=>{if(Array.isArray(e)){var t=e.filter((function(e){return!e.is_placeholder})),a=e.filter((function(e){return!!e.is_placeholder}));n(t),r(a)}else n([]),r([]);u(!1)})).catch((function(){n([]),r([]),u(!1)}))}),[]);var O=(0,s.useMemo)((function(){var e=t.slice(),n=!0;if("all"!==b&&(e=e.filter((function(e){return e.status===b})),n=!1),g&&(e=e.filter((function(e){return e.category===g}))),E&&E.length>=2){var r=E.toLowerCase();e=e.filter((function(e){return-1!==e.label.toLowerCase().indexOf(r)||e.description&&-1!==e.description.toLowerCase().indexOf(r)})),n=!1}if(n){var i=a.slice();g&&(i=i.filter((function(e){return e.category===g}))),e=e.concat(i)}return e.sort((function(e,t){var n="number"==typeof e.order?e.order:100,a="number"==typeof t.order?t.order:100;if(n!==a)return n-a;var r=e.label||"",i=t.label||"";return r.localeCompare(i)})),e}),[t,a,b,g,E]);const R=O.reduce(((e,t)=>{const n=t.category||"community";return e[n]||(e[n]=[]),e[n].push(t),e}),{}),P={};["community","add-ons","integrations","tools"].forEach((function(e){R[e]&&(P[e]=R[e])})),Object.keys(R).forEach((function(e){P[e]||(P[e]=R[e])}));const M={all:t.length+a.length,active:t.filter((function(e){return"active"===e.status})).length,inactive:t.filter((function(e){return"inactive"===e.status})).length},B=[].concat(t,a).reduce((function(e,t){var n=t.category||"community";return e[n]=(e[n]||0)+1,e}),{});(0,_.A)(N,C);const T=(0,s.useRef)({}),L=(e,a)=>{const r=a?"active":"inactive",i=a?"inactive":"active",o=t.find((t=>t.id===e)),s=o?.label||e;C({status:"saving",message:(0,l.__)("Saving changes...","buddyboss")}),n((t=>t.map((t=>t.id===e?{...t,status:r}:t)))),(0,d.Dx)(e,{status:r}),T.current[e]&&T.current[e].abort();const c=new AbortController;T.current[e]=c,I((t=>{const n=new Set(t);return n.add(e),n}));const u=()=>{I((t=>{if(!t.has(e))return t;const n=new Set(t);return n.delete(e),n}))};(0,d.P1)(e,a,{signal:c.signal}).then((t=>{if(T.current[e]===c&&delete T.current[e],u(),t.success){const i=t.data?.data,c=t.data?.deactivated_dependents||[],u=t.data?.reactivatable_dependents||[];if(n((t=>t.map((t=>t.id===e?{...t,...i}:-1!==c.indexOf(t.id)?{...t,status:"active"===t.status?"inactive":t.status,available:!1}:-1!==u.indexOf(t.id)?{...t,available:!0}:t)))),(0,d.Dx)(e,i),c.forEach((function(e){(0,d.Dx)(e,{available:!1})})),u.forEach((function(e){(0,d.Dx)(e,{available:!0})})),p(),o&&o.settings_route&&o.settings_route.startsWith("http"))try{var r=new URL(o.settings_route).searchParams.get("page");if(r&&"bb-settings"!==r){var b=document.querySelector('#adminmenu a[href*="page='+CSS.escape(r)+'"]');if(b){var m=b.closest("li");m&&(m.style.display=a?"":"none")}else a&&window.location.reload()}}catch(e){}const f=a?(0,l.sprintf)((0,l.__)("%s has been enabled.","buddyboss"),s):(0,l.sprintf)((0,l.__)("%s has been disabled.","buddyboss"),s);C({status:"success",message:f})}else n((t=>t.map((t=>t.id===e?{...t,status:i}:t)))),(0,d.Dx)(e,{status:i}),C({status:"error",message:t.data?.message||(0,l.__)("Failed to update feature. Please try again.","buddyboss")})})).catch((t=>{"AbortError"!==t.name&&(T.current[e]===c&&delete T.current[e],u(),n((t=>t.map((t=>t.id===e?{...t,status:i}:t)))),(0,d.Dx)(e,{status:i}),C({status:"error",message:(0,l.__)("Failed to update feature. Please try again.","buddyboss")}))}))},j=(e,t)=>{if(e.plugin_slug&&window.bbAdminData.addonNonce){var a=e.label||e.id,i="mosh_addon_install"===t;C({status:"saving",message:i?(0,l.sprintf)((0,l.__)("Installing & activating %s...","buddyboss"),a):(0,l.sprintf)((0,l.__)("Activating %s...","buddyboss"),a)});var o=new FormData;o.append("action",t),o.append("_ajax_nonce",window.bbAdminData.addonNonce),o.append("slug",e.plugin_slug),o.append("extension_type","plugin"),fetch(window.bbAdminData.ajaxUrl,{method:"POST",body:o}).then((function(e){return e.json()})).then((function(e){if(e&&e.success)return C({status:"success",message:i?(0,l.sprintf)((0,l.__)("%s has been installed and activated.","buddyboss"),a):(0,l.sprintf)((0,l.__)("%s has been activated.","buddyboss"),a)}),(0,d.x$)(),(0,d.i)().then((function(e){if(e&&e.success&&Array.isArray(e.data)){var t=e.data.filter((function(e){return!e.is_placeholder})),a=e.data.filter((function(e){return!!e.is_placeholder}));n(t),r(a)}}));var t=e&&e.data&&e.data.message?e.data.message:(0,l.__)("Failed to process. Please try again.","buddyboss");C({status:"error",message:t})})).catch((function(){C({status:"error",message:(0,l.__)("Failed to process. Please try again.","buddyboss")})}))}};return i?(0,o.createElement)("div",{className:"bb-admin-settings bb-admin-loading"},(0,o.createElement)(c.Spinner,null)):(0,o.createElement)("div",{className:"bb-admin-settings"},(0,o.createElement)("div",{className:"bb-admin-settings__container"},(0,o.createElement)("div",{className:"bb-admin-settings__filters"},(0,o.createElement)("div",{className:"bb-admin-settings__filter-tabs"},(0,o.createElement)("button",{className:"bb-admin-settings__filter-tab "+("all"===b?"bb-admin-settings__filter-tab--active":""),onClick:()=>m("all")},(0,l.__)("All","buddyboss")," (",M.all,")"),(0,o.createElement)("button",{className:"bb-admin-settings__filter-tab "+("active"===b?"bb-admin-settings__filter-tab--active":""),onClick:()=>m("active")},(0,l.__)("Active","buddyboss")," (",M.active,")"),(0,o.createElement)("button",{className:"bb-admin-settings__filter-tab "+("inactive"===b?"bb-admin-settings__filter-tab--active":""),onClick:()=>m("inactive")},(0,l.__)("Inactive","buddyboss")," (",M.inactive,")")),(0,o.createElement)("div",{className:"bb-admin-settings__filter-right"},(0,o.createElement)("select",{className:"bb-admin-settings__select bb-admin-settings__filter-select",value:g,onChange:e=>h(e.target.value)},(0,o.createElement)("option",{value:""},(0,l.__)("All","buddyboss")),Object.keys(B).map((e=>(0,o.createElement)("option",{key:e,value:e},"community"===e?(0,l.__)("Community","buddyboss"):"add-ons"===e?(0,l.__)("Add-ons","buddyboss"):"tools"===e?(0,l.__)("Tools","buddyboss"):(0,l.__)("Integrations","buddyboss"))))))),(0,o.createElement)("div",{className:"bb-admin-settings__grid"},Object.entries(P).map((([n,r])=>(0,o.createElement)("div",{key:n,className:"bb-admin-settings__category"},(0,o.createElement)("div",{className:"community"===n?"bb-admin-settings__category-divider":"bb-admin-settings__category-divider bb-admin-settings__category-divider--with-line"},(0,o.createElement)("h2",{className:"bb-admin-settings__category-title"},"community"===n?(0,l.__)("BUDDYBOSS COMMUNITY SETTINGS","buddyboss"):"add-ons"===n?(0,l.__)("BUDDYBOSS ADD-ONS","buddyboss"):"integrations"===n?(0,l.__)("BUDDYBOSS INTEGRATIONS","buddyboss"):"tools"===n?(0,l.__)("TOOLS","buddyboss"):(0,l.__)("BUDDYBOSS INTEGRATIONS","buddyboss"))),(0,o.createElement)("div",{className:"bb-admin-settings__features-grid"},r.map((n=>{return(0,o.createElement)("div",{key:n.id,className:`bb-admin-settings__feature-card bb-admin-settings__feature-card--${n.status}${n.available||n.is_placeholder||n.is_drm_locked?"":" bb-admin-settings__feature-card--unavailable"}${n.is_placeholder?" bb-admin-settings__feature-card--placeholder":""}${n.is_drm_locked?" bb-admin-settings__feature-card--drm-locked":""}`},(n.is_placeholder&&"not_in_plan"===n.plugin_status||n.is_drm_locked)&&n.upgrade_tier&&(0,o.createElement)("button",{className:`bb-admin-settings__plan-badge bb-admin-settings__plan-badge--${n.upgrade_tier}`,onClick:()=>k({feature:n}),type:"button"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-crown-simple"}),"plus"===n.upgrade_tier?(0,l.__)("UPGRADE SCALE","buddyboss"):"start"===n.upgrade_tier?(0,l.__)("UPGRADE START","buddyboss"):(0,l.__)("UPGRADE LAUNCH","buddyboss")),(0,o.createElement)("div",{className:"bb-admin-settings__feature-body"},(0,o.createElement)("div",{className:"bb-admin-settings__feature-top"},(0,o.createElement)("div",{className:"bb-admin-settings__feature-name"},(0,o.createElement)("div",{className:"bb-admin-settings__feature-icon-frame"},(()=>{if(!n.icon)return(0,o.createElement)("span",{className:"dashicons dashicons-admin-generic"});const e=n.icon.data||n.icon,t=n.icon.type||e.type;if("dashicon"===t){const t=n.icon.slug||e.slug||"dashicons-admin-generic";return(0,o.createElement)("span",{className:`dashicons ${t}`})}if("svg"===t){const t=(0,f.Pl)(n.icon.url||e.url||e.data_uri||e.data&&e.data.url||e.data&&e.data.data_uri||"");if(t&&"#"!==t)return(0,o.createElement)("img",{src:t,alt:n.label,className:"bb-admin-settings__feature-icon-img"})}if("image"===t){const t=(0,f.Pl)(n.icon.url||e.url||e.path||e.data&&e.data.url||e.data&&e.data.path||"");if(t&&"#"!==t)return(0,o.createElement)("img",{src:t,alt:n.label,className:"bb-admin-settings__feature-icon-img"})}if("font"===t){const t=n.icon.class||e.class||e.data&&e.data.class;if(t)return(0,o.createElement)("span",{className:t})}return(0,o.createElement)("span",{className:"dashicons dashicons-admin-generic"})})()),(0,o.createElement)("h3",{className:"bb-admin-settings__feature-title"},n.label))),(0,o.createElement)("p",{className:"bb-admin-settings__feature-description"},n.description||(0,l.__)("No description available.","buddyboss"))),(0,o.createElement)("div",{className:"bb-admin-settings__feature-bottom"},(0,o.createElement)("div",{className:"bb-admin-settings__feature-left"},n.is_placeholder&&"not_installed"===n.plugin_status&&n.plugin_slug?(0,o.createElement)(c.Button,{variant:"secondary",className:"bb-admin-settings__feature-settings-btn"+(n.requires_unmet?" bb-admin-settings__feature-settings-btn--disabled":""),disabled:!!n.requires_unmet,onClick:n.requires_unmet?void 0:()=>j(n,"mosh_addon_install")},(0,l.__)("Install & Activate","buddyboss")):n.is_placeholder&&"installed_inactive"===n.plugin_status&&n.plugin_slug?(0,o.createElement)(c.Button,{variant:"secondary",className:"bb-admin-settings__feature-settings-btn"+(n.requires_unmet?" bb-admin-settings__feature-settings-btn--disabled":""),disabled:!!n.requires_unmet,onClick:n.requires_unmet?void 0:()=>j(n,"mosh_addon_activate")},(0,l.__)("Activate","buddyboss")):n.is_placeholder?(0,o.createElement)(c.Button,{variant:"secondary",className:"bb-admin-settings__feature-settings-btn bb-admin-settings__feature-settings-btn--disabled bb-admin-settings__feature-settings-btn--placeholder",disabled:!0},(0,o.createElement)("i",{className:"bb-icon-settings"}),(0,l.__)("Settings","buddyboss")):n.settings_route?(r=D.has(n.id),i="active"!==n.status||!!n.is_drm_locked||r,(0,o.createElement)(c.Button,{variant:"secondary",className:"bb-admin-settings__feature-settings-btn"+(i?" bb-admin-settings__feature-settings-btn--disabled":""),onClick:()=>{n.is_drm_locked||r||(n.settings_route&&n.settings_route.startsWith("http")&&!n.settings_route.includes("page=bb-settings")?window.location.href=n.settings_route:e(function(e){let t=e;e.includes("?")&&(t=e.split("?")[1]);const n=new URLSearchParams(t),a=n.get("page"),r=n.get("tab"),i=n.get("panel");if("bb-settings"!==a)return"/settings";let o="/settings";return r&&(o+=`/${r}`,i&&(o+=`/${i}`)),o}(n.settings_route)))},disabled:i,"aria-busy":r?"true":void 0},(0,o.createElement)("i",{className:"bb-icon-settings"}),(0,l.__)("Settings","buddyboss"))):null),(0,o.createElement)("div",{className:"bb-admin-settings__feature-right"},(0,o.createElement)(c.ToggleControl,{className:`components-form-toggle--is-big${n.is_placeholder?" bb-admin-settings__toggle--placeholder":""}${n.is_drm_locked?" bb-admin-settings__toggle--drm-locked":""}`,checked:"active"===n.status,onChange:e=>((e,n)=>{if(!a.some((function(t){return t.id===e}))&&!t.some((function(t){return t.id===e&&t.is_drm_locked}))){if(!n){var r=t.find((function(t){return t.id===e}));if(r&&r.confirm_off_message)return void A({feature:r,checked:n})}L(e,n)}})(n.id,e),disabled:!n.available||n.required||!!n.is_placeholder||!!n.is_drm_locked,__nextHasNoMarginBottom:!0}),(0,o.createElement)("span",{className:"screen-reader-text"},(0,l.sprintf)(/* translators: %s: feature label */ /* translators: %s: feature label */ (0,l.__)("Toggle %s","buddyboss"),n.label)))));var r,i}))))))),0===O.length&&(0,o.createElement)("div",{className:"bb-admin-settings__empty"},(0,o.createElement)("p",null,(0,l.__)("No features found matching your filters.","buddyboss")))),N&&(0,o.createElement)("div",{className:"bb-toast-container"},(0,o.createElement)(_.y,{status:N.status,message:N.message,onDismiss:()=>C(null)})),x&&(0,o.createElement)(v,{feature:x.feature,onClose:()=>k(null)}),S&&S.feature&&(0,o.createElement)(y.C,{isOpen:!0,title:S.feature.confirm_off_title,message:S.feature.confirm_off_message,messageIsHtml:!!S.feature.confirm_off_message_is_html,confirmLabel:S.feature.confirm_off_ok,cancelLabel:S.feature.confirm_off_cancel,isDestructive:void 0===S.feature.confirm_off_destructive||!!S.feature.confirm_off_destructive,onConfirm:()=>{const e=S;A(null),L(e.feature.id,e.checked)},onCancel:()=>A(null)}))}var E="bb-section-status-update",w="bb-field-value-update",N="bb-field-disabled-update",C="bb-settings-toast";function x(e,t,n){return(e||[]).map((e=>({...e,sections:(e.sections||[]).map((e=>({...e,fields:(e.fields||[]).map((e=>"reaction_migration"===e.type||"reaction_notice"===e.type?{...e,migration_data:t,migration_status:n}:e))})))})))}var k=i(4516);function S({field:e,value:t,values:n,onChange:a,defaultEmotionsRef:r,onProBadgeClick:i}){const s=t||"likes",d=(e.reactions||{}).emotions||[];r&&(r.current=d);const u=n.reaction_items&&"object"==typeof n.reaction_items?n.reaction_items:null,b=u&&Object.keys(u).length>0?Object.keys(u).map((e=>{const t=u[e];return"object"==typeof t&&null!==t?{...t,id:t.id||e}:null})).filter(Boolean):d.map((e=>({...e,is_emotion_active:!1!==e.is_emotion_active}))),m=(e.options||[]).find((e=>e.value===s)),p=m?.notice||"";return(0,o.createElement)("div",{key:e.name,className:"bb-reaction-mode"},(0,o.createElement)("div",{className:"bb-reaction-mode__radios"},(e.options||[]).map((t=>(0,o.createElement)("label",{key:t.value,htmlFor:t.id,className:"bb-reaction-mode__radio-label"+(t.disabled?" disabled":"")},(0,o.createElement)("input",{type:"radio",name:e.name,id:t.id,value:t.value,checked:s===t.value,disabled:t.disabled,"data-notice":t.notice||"",onChange:()=>a(e.name,t.value)}),(0,o.createElement)("span",{className:"bb-reaction-mode__radio-label-text"},t.label),t.disabled&&e.pro_notice?.show&&(0,o.createElement)(o.Fragment,null,(0,o.createElement)("span",{className:"bb-pro-badge"+(e.pro_notice.tier?" bb-pro-badge--"+e.pro_notice.tier:"")},(0,o.createElement)("i",{className:e.pro_notice.badge_icon||""}),(0,o.createElement)("span",null,e.pro_notice.badge_text||"LAUNCH")),e.pro_notice.modal&&i?(0,o.createElement)("button",{type:"button",onClick:()=>i(e),className:"bb-pro-badge__play-link","aria-label":(0,l.__)("Learn more","buddyboss")},(0,o.createElement)("i",{className:e.pro_notice.link_icon||"bb-icons-rl bb-icons-rl-play"})):e.pro_notice.link_url&&(0,o.createElement)("a",{href:(0,f.Pl)(e.pro_notice.link_url),target:"_blank",rel:"noopener noreferrer",className:"bb-pro-badge__play-link","aria-label":(0,l.__)("Learn more about PRO","buddyboss")},(0,o.createElement)("i",{className:e.pro_notice.link_icon||""}))))))),p&&(0,o.createElement)("p",{className:"description bb-reaction-mode-description"},p),"emotions"===s&&(0,o.createElement)("div",{className:"bb-reaction-mode__cards"},b.map((e=>(0,o.createElement)("div",{key:e.id,className:"bb_emotions_item"+(e.is_emotion_active?"":" is-disabled"),"data-reaction-id":e.id},(0,o.createElement)("div",{className:"bb_emotions_icon"},(e=>"bb-icons"===e.type?(0,o.createElement)("i",{className:`bb-icon-rf bb-icon-${e.icon}`,style:{color:e.icon_color}}):"custom"===e.type&&e.icon_path?(0,o.createElement)("img",{src:(0,f.Pl)(e.icon_path),alt:""}):"emotions"===e.type?(0,o.createElement)("span",{className:"bbpro-icon-emoji"},e.icon_path?(0,o.createElement)("img",{src:(0,f.Pl)(e.icon_path),alt:""}):e.icon):null)(e)),(0,o.createElement)("div",{className:"bb_emotions_footer"},(0,o.createElement)("span",{style:{color:e.text_color}},e.icon_text||e.name),(0,o.createElement)(c.DropdownMenu,{icon:(0,o.createElement)("i",{className:"bb-icons-rl-dots-three"}),label:(0,l.__)("More options","buddyboss"),className:"bb_emotions_actions"},(({onClose:t})=>(0,o.createElement)(c.MenuGroup,{className:"bb_dropdown_menu_group"},(0,o.createElement)(c.MenuItem,{icon:(0,o.createElement)(k.C,{name:"note-pencil"}),iconPosition:"left",onClick:()=>{t(),(e=>{const t=document.querySelector(`.bb_emotions_item[data-reaction-id="${e.id}"] .bb_emotions_edit`);if(t&&window.jQuery){window.jQuery(t).trigger("click");const n=document.getElementById("bbpro_emotion_modal");if(!n)return;const a=new MutationObserver((()=>{const t=window.jQuery;let n;if("emotions"===e.type?n=t(`#bbpro_emotion_modal .bbpro-emoji-tag-render[data-name="${e.name}"]`):"bb-icons"===e.type&&(n=t(`#bbpro_emotion_modal .bbpro-icon-tag-render[data-css="${e.icon}"]`)),n&&n.length){a.disconnect();const e=n.attr("data-group");e&&(t(".bbpro-icon-category-filter-select").val(e).trigger("change"),requestAnimationFrame((()=>{const e=n.get(0);e&&e.scrollIntoView({behavior:"auto",block:"center"})})))}}));a.observe(n,{childList:!0,subtree:!0}),setTimeout((()=>a.disconnect()),5e3)}})(e)}},(0,l.__)("Edit","buddyboss")),(0,o.createElement)(c.MenuItem,{icon:(0,o.createElement)(k.C,{name:"trash"}),iconPosition:"left",onClick:()=>{t(),(e=>{if(window.jQuery&&window.bp?.Reaction_Admin){const t=window.jQuery,n=e.id;window.bbReactPendingDeleteEmotionId=n,n&&(t(".bb-reaction-delete-modal__content").html('
'),t("#bbpro_reaction_delete_confirmation").css("display","block"),t.ajax({url:window.bbReactionAdminVars?.ajax_url,data:{action:"bb_pro_reaction_check_delete_emotion",emotion_id:n,nonce:window.bbReactionAdminVars?.nonce?.check_delete_emotion},method:"POST"}).done((function(e){!0===e.success&&void 0!==e.data?.content?t(".bb-reaction-delete-modal__content").html((0,f.pn)(e.data.content)):e.data?.message&&t(".bb-reaction-delete-modal__content").html((0,f.pn)(e.data.message))})))}})(e)}},(0,l.__)("Delete","buddyboss")))))),(0,o.createElement)("input",{type:"hidden",className:"bb_admin_setting_reaction_item bb_emotions_edit",name:`reaction_items[${e.id}]`,value:JSON.stringify(e),"data-icon":JSON.stringify(e),"data-type":e.type})))),[...Array(Math.max(0,6-b.length))].map(((e,t)=>(0,o.createElement)("div",{key:`add-${t}`,className:"bb_emotions_item bb_emotions_item_action"},(0,o.createElement)("button",{className:"bb_emotions_add_new","aria-label":(0,l.__)("Add New Emotion","buddyboss"),"data-bp-tooltip":(0,l.__)("Add new","buddyboss"),"data-bp-tooltip-pos":"up",onClick:()=>{}},(0,o.createElement)("i",{className:"bb-icons-rl-plus"})))))))}var A=i(3957);function D({field:e,onStartConversion:t}){const[n,a]=(0,s.useState)(!1),r=e.migration_data||{},i=e.migration_status||"",c=r&&r.action&&r.total_reactions>0&&"inprogress"!==i&&"completed"!==i;if(n||!c)return null;const d=r.total_reactions||0,u="like_to_emotions_action"===r.action?(0,l.__)("Likes","buddyboss"):(0,l.__)("Reactions","buddyboss");return(0,o.createElement)("div",{className:"bb-admin-settings-form__field bb-admin-settings-form__field--full-width bb-admin-reaction-migration-wrapper"},(0,o.createElement)("div",{className:"bb-admin-notice bb-admin-notice--warning"},(0,o.createElement)("div",{className:"bb-admin-notice__icon"},(0,o.createElement)("span",{className:"bb-icons-rl bb-icons-rl-warning-circle"})),(0,o.createElement)("div",{className:"bb-admin-notice__content"},(0,o.createElement)("p",null,(0,l.__)("You have ","buddyboss"),(0,o.createElement)("strong",null,(0,A.ZV)(d))," ",u," ",(0,l.__)("previously submitted on your site which can be converted to","buddyboss")," ","like_to_emotions_action"===r.action?(0,l.__)("an Emotion","buddyboss"):(0,l.__)("Likes","buddyboss"),".")),(0,o.createElement)("div",{className:"bb-admin-notice__actions"},(0,o.createElement)("button",{type:"button",className:"bb-admin-notice__button",onClick:e=>{e.preventDefault(),t&&t(r)}},(0,l.__)("Start Conversion","buddyboss"))),(0,o.createElement)("button",{type:"button",className:"bb-admin-notice__close",onClick:e=>{e.preventDefault(),a(!0),window.bbReactionAdminVars&&window.bbReactionAdminVars.ajax_url&&window.jQuery.ajax({url:window.bbReactionAdminVars.ajax_url,method:"POST",data:{action:"bb_pro_reaction_migration_do_later",nonce:window.bbReactionAdminVars.nonce?.migration_do_later||""},success:()=>{"undefined"!=typeof window&&window.dispatchEvent(new CustomEvent("bb-admin-refetch-feature"))}})},"aria-label":(0,l.__)("Dismiss","buddyboss")},(0,o.createElement)("span",{className:"bb-icons-rl bb-icons-rl-x"}))))}const I={};let O=null;function R({field:e}){const[t,n]=(0,s.useState)(!1),[a,r]=(0,s.useState)(!1),[i,c]=(0,s.useState)(O?O.migrationData:e.migration_data||{}),[d,u]=(0,s.useState)(O?O.migrationStatus:e.migration_status||""),b=(0,s.useRef)(null),m=(0,s.useCallback)(((e,t)=>{c(e),u(t),O="completed"===t?null:{migrationData:e,migrationStatus:t}}),[]),p=(0,s.useCallback)(((e,t)=>{m(e||{},t||""),"completed"===t&&window.dispatchEvent(new CustomEvent("bb-admin-refetch-feature"))}),[m]),f=(()=>{const t=e.migration_data||{};return t.action&&t.type&&t.total_reactions?JSON.stringify({action:t.action,type:t.type,total:t.total_reactions,from:t.from_emotions||[],to:t.to_emotions||0}):""})(),_=!(!f||!I[f]);(0,s.useEffect)((()=>{const t=e.migration_data||{},a=e.migration_status||"";"completed"===a||"dismissed"===t.status?(m(t,a),O=null):t.action?O||m(t,a):O&&("inprogress"===O.migrationStatus||"running"===O.migrationData?.status)||(m(t,a),O=null),f&&!I[f]&&n(!1)}),[e.migration_data,e.migration_status,f,m]);const g="inprogress"===d||"running"===i.status,v="completed"===d||"completed"===i.status;if((0,s.useEffect)((()=>{const t=e.migration_status||"",n=e.migration_data?.status||"",a=O?.migrationStatus||"",r=O?.migrationData?.status||"";"completed"!==t&&"completed"!==n&&"completed"!==a&&"completed"!==r&&(e.migration_data?.action||t&&""!==t||O&&("inprogress"===a||"running"===r))&&window.bbReactionAdminVars?.ajax_url&&jQuery.ajax({url:window.bbReactionAdminVars.ajax_url,method:"POST",data:{action:"bb_pro_reaction_check_migration",nonce:window.bbReactionAdminVars.nonce?.check_migration||""},success:e=>{e.success&&e.data&&p(e.data.migration_data,e.data.migration_status)}})}),[]),(0,s.useEffect)((()=>{if(g&&!t)return b.current=setInterval((()=>{window.bbReactionAdminVars?.ajax_url&&jQuery.ajax({url:window.bbReactionAdminVars.ajax_url,method:"POST",data:{action:"bb_pro_reaction_check_migration",nonce:window.bbReactionAdminVars.nonce?.check_migration||""},success:e=>{if(e.success&&e.data){const t=e.data.migration_status||"";p(e.data.migration_data,t),"completed"===t&&clearInterval(b.current)}}})}),3e4),()=>{b.current&&clearInterval(b.current)}}),[g,t,p]),_||t||!g&&!v)return null;const y=()=>{n(!0),O=null,f&&(I[f]=!0),v&&window.bbReactionAdminVars?.ajax_url&&jQuery.ajax({url:window.bbReactionAdminVars.ajax_url,method:"POST",data:{action:"bb_pro_reaction_dismiss_migration_notice",nonce:window.bbReactionAdminVars.nonce?.dismiss_migration_notice||""},success:()=>{window.dispatchEvent(new CustomEvent("bb-admin-refetch-feature"))}})},h=e=>{e.preventDefault(),window.bbReactionAdminVars?.ajax_url&&jQuery.ajax({url:window.bbReactionAdminVars.ajax_url,method:"POST",data:{action:"bb_pro_reaction_check_migration",nonce:window.bbReactionAdminVars.nonce?.check_migration||""},success:e=>{e.success&&e.data&&p(e.data.migration_data,e.data.migration_status)}})},E=e=>{e.preventDefault(),window.bbReactionAdminVars?.ajax_url&&r(!0)},w=()=>{r(!1),jQuery.ajax({url:window.bbReactionAdminVars.ajax_url,method:"POST",data:{action:"bb_pro_reaction_migration_stop_conversion",nonce:window.bbReactionAdminVars.nonce?.migration_stop_conversion||""},success:e=>{e.success&&(O=null,window.dispatchEvent(new CustomEvent("bb-admin-refetch-feature")))}})};if(v){const e=i.action||"",t=i.total_reactions||0,n=i.from_emotions_name||"",a=i.to_emotions_name||"";let r=e;"emotions"===e?r="like_to_emotions_action":"likes"===e&&(r="emotions_to_like_action");const s="like_to_emotions_action"===r?(0,o.createElement)("p",null,(0,o.createElement)("strong",null,(0,A.ZV)(t)," ",n)," ",(0,l.__)("were successfully converted to the","buddyboss")," ",(0,o.createElement)("strong",null,a)," ",(0,l.__)("emotion.","buddyboss")):"emotions_to_like_action"===r?(0,o.createElement)("p",null,(0,o.createElement)("strong",null,(0,A.ZV)(t))," ",(0,l.__)("reactions were successfully converted to","buddyboss")," ",(0,o.createElement)("strong",null,a),"."):null;return(0,o.createElement)("div",{className:"bb-admin-settings-form__field bb-admin-settings-form__field--full-width bb-admin-reaction-notice-wrapper"},(0,o.createElement)("div",{className:"bb-admin-notice bb-admin-notice--success"},(0,o.createElement)("div",{className:"bb-admin-notice__icon"},(0,o.createElement)("span",{className:"bb-icons-rl bb-icons-rl-check-circle"})),(0,o.createElement)("div",{className:"bb-admin-notice__content"},s),(0,o.createElement)("button",{type:"button",className:"bb-admin-notice__close",onClick:y,"aria-label":(0,l.__)("Dismiss","buddyboss")},(0,o.createElement)("span",{className:"bb-icons-rl bb-icons-rl-x"}))))}if(g){const e=parseInt(i.total_reactions||0),t=parseInt(i.updated_emotions||0),n=e>0?Math.ceil(100*t/e):0;return(0,o.createElement)("div",{className:"bb-admin-settings-form__field bb-admin-settings-form__field--full-width bb-admin-reaction-notice-wrapper"},(0,o.createElement)("div",{className:"bb-admin-notice bb-admin-notice--info bb-admin-notice--progress"},(0,o.createElement)("div",{className:"bb-admin-notice__icon"},(0,o.createElement)("span",{className:"bb-icons-rl bb-icons-rl-spinner animate-spin"})),(0,o.createElement)("div",{className:"bb-admin-notice__content"},(0,o.createElement)("p",null,(0,o.createElement)("strong",null,(0,l.__)("%1$s out of %2$s %3$s reactions have been converted","buddyboss").replace("%1$s",(0,A.ZV)(t)).replace("%2$s",(0,A.ZV)(e)).replace("%3$s",`(${n}%)`))),(0,o.createElement)("p",null,(0,l.__)("This action is being performed in the background, but may take some time based on the amount of data.","buddyboss"))),(0,o.createElement)("div",{className:"bb-admin-notice__actions"},(0,o.createElement)("button",{type:"button",className:"bb-admin-notice__button bb-admin-notice__button--outline",onClick:h},(0,l.__)("Recheck status","buddyboss")),(0,o.createElement)("button",{type:"button",className:"bb-admin-notice__button bb-admin-notice__button--text",onClick:E},(0,l.__)("Stop","buddyboss"))),a&&(0,o.createElement)("div",{className:"bb-admin-notice__confirm"},(0,o.createElement)("span",null,(0,l.__)("Are you sure you want to stop the migration?","buddyboss")),(0,o.createElement)("button",{type:"button",className:"bb-admin-notice__button bb-admin-notice__button--danger",onClick:w},(0,l.__)("Yes, stop","buddyboss")),(0,o.createElement)("button",{type:"button",className:"bb-admin-notice__button bb-admin-notice__button--text",onClick:()=>r(!1)},(0,l.__)("Cancel","buddyboss")))))}return null}function P({field:e,onOpenMigrationWizard:t}){const n=e.description||"",a=(e.link||{}).text||(0,l.__)("migration wizard","buddyboss");if(!n)return null;const r=n.indexOf("{link}"),i=-1!==r?n.slice(0,r):n,s=-1!==r?n.slice(r+6):"";return(0,o.createElement)("div",{className:"bb-admin-reaction-info-wrapper"},(0,o.createElement)("div",{className:"bb-admin-reaction-info"},(0,o.createElement)("p",{className:"bb-admin-reaction-info__text"},i,(0,o.createElement)("a",{href:"#",className:"bb-admin-reaction-info__link",onClick:e=>{e.preventDefault(),t&&t()}},a),s)))}function M({isOpen:e,onClose:t,migrationData:n}){const[a,r]=(0,s.useState)(!0),[i,d]=(0,s.useState)((0,l.__)("Migration wizard","buddyboss")),[u,b]=(0,s.useState)(""),[m,p]=(0,s.useState)(""),_=(0,s.useRef)(t);_.current=t;const g=(0,s.useRef)(n);g.current=n;const v=(0,s.useCallback)((()=>{const e=document.querySelector("button.footer_next_wizard_screen");if(!e)return;const t=document.querySelectorAll("input.migrate_emotion_input"),n=document.querySelectorAll('input[name="from_reactions[]"]'),a=document.querySelector('input[name="from_all_emotions"]'),r=Array.from(t).some((e=>e.checked))||Array.from(n).some((e=>e.checked))||a&&a.checked,i=document.querySelector('select[name="to_reactions"]'),o=i&&i.value&&""!==i.value;r||o?e.classList.remove("disabled"):e.classList.add("disabled")}),[]),y=(0,s.useCallback)((e=>{"from_all_emotions"===e.target.name&&document.querySelectorAll('input[name="from_reactions[]"]').forEach((t=>{t.checked=e.target.checked,t.disabled=e.target.checked})),v()}),[v]),h=(0,s.useCallback)((e=>{("from_reactions[]"===e.target.name||e.target.classList.contains("migrate_emotion_input"))&&v()}),[v]),E=(0,s.useCallback)((e=>{"to_reactions"===e.target.name&&v()}),[v]),w=(0,s.useCallback)((e=>{e.target.classList.contains("footer_next_wizard_screen")&&!e.target.classList.contains("disabled")&&(document.querySelector(".bbpro_migration_wizard_2").classList.add("active"),document.querySelector(".bbpro_migration_wizard_1").classList.remove("active"))}),[]),N=(0,s.useCallback)((e=>{e.target.classList.contains("cancel_migration_wizard")&&_.current()}),[]),C=(0,s.useCallback)((e=>{"to_reactions"===e.target.name&&v()}),[v]),x=(0,s.useCallback)((e=>{if(!e.target.classList.contains("start_migration_wizard"))return;const t=document.querySelector('select[name="to_reactions"]'),n=t?t.value:"",a=document.querySelectorAll('input[name="from_reactions[]"]:checked'),r=Array.from(a).map((e=>e.value)),i=document.querySelector('input[name="from_all_emotions"]'),o=i&&i.checked;e.target.disabled=!0,e.target.textContent=(0,l.__)("Converting...","buddyboss");const s=document.querySelector(".cancel_migration_wizard");s&&(s.disabled=!0);const c={migration_action:"footer"===g.current?.wizardType?"footer":"switch"};n&&(c.to_reactions=n),r.length>0&&(c.from_reactions=r),o&&(c.from_all_emotions=!0);const d=new FormData;d.append("action","bb_admin_save_feature_settings"),d.append("nonce",window.bbAdminData?.ajaxNonce||""),d.append("feature_id","reactions"),d.append("settings",JSON.stringify(c)),fetch(window.bbAdminData?.ajaxUrl||window.ajaxurl||"/wp-admin/admin-ajax.php",{method:"POST",credentials:"same-origin",body:d}).then((e=>{if(!e.ok)throw new Error("HTTP "+e.status+": "+e.statusText);return e.json()})).then((t=>{t.success?(e.target.textContent=(0,l.__)("Conversion started!","buddyboss"),setTimeout((()=>{_.current(),window.dispatchEvent(new CustomEvent("bb-admin-refetch-feature"))}),1e3)):(e.target.disabled=!1,e.target.textContent=(0,l.__)("Start conversion","buddyboss"),s&&(s.disabled=!1),p(t.data?.message||(0,l.__)("Migration failed. Please try again.","buddyboss")))})).catch((()=>{e.target.disabled=!1,e.target.textContent=(0,l.__)("Start conversion","buddyboss"),s&&(s.disabled=!1),p((0,l.__)("Migration failed. Please try again.","buddyboss"))}))}),[p]);(0,s.useEffect)((()=>{if(!u)return;document.addEventListener("change",y),document.addEventListener("change",h),document.addEventListener("change",E),document.addEventListener("click",w),document.addEventListener("click",N),document.addEventListener("change",C),document.addEventListener("click",x);const e=document.querySelector('input[name="from_all_emotions"]'),t=document.querySelectorAll('input[name="from_reactions[]"]');return e&&!e.checked&&t.forEach((e=>{e.disabled=!1})),v(),()=>{document.removeEventListener("change",y),document.removeEventListener("change",h),document.removeEventListener("change",E),document.removeEventListener("click",w),document.removeEventListener("click",N),document.removeEventListener("change",C),document.removeEventListener("click",x)}}),[u,y,h,E,w,N,C,x,v]);const k=(0,s.useCallback)((()=>{if(r(!0),p(""),!window.bbReactionAdminVars||!window.bbReactionAdminVars.ajax_url)return p((0,l.__)("Unable to load migration wizard.","buddyboss")),void r(!1);const e="footer"===g.current?.wizardType,t=e?"bb_pro_reaction_footer_migration":"bb_pro_reaction_migration_start_conversion",n=e?window.bbReactionAdminVars.nonce?.footer_migration||"":window.bbReactionAdminVars.nonce?.migration_start_conversion||"",a=document.getElementById("migration_action");a&&(a.value=e?"footer":"switch"),jQuery.ajax({url:window.bbReactionAdminVars.ajax_url,method:"POST",data:{action:t,nonce:n},success:e=>{e.success&&e.data?(e.data.label&&d(e.data.label),e.data.content?b(e.data.content):e.data.message&&p(e.data.message)):e.data&&e.data.message?p(e.data.message):p((0,l.__)("Unable to load migration wizard.","buddyboss")),r(!1)},error:()=>{p((0,l.__)("Unable to load migration wizard.","buddyboss")),r(!1)}})}),[]);return(0,s.useEffect)((()=>{e&&k()}),[e,k]),e?(0,o.createElement)(c.Modal,{title:i,onRequestClose:t,className:"bb-admin-migration-modal bb-admin-settings-modal",__experimentalHideHeader:!1},(0,o.createElement)("div",{className:"bb-admin-migration-modal__content"},a&&(0,o.createElement)("div",{className:"bb-admin-migration-modal__loader"},(0,o.createElement)("span",{className:"bb-icons-rl bb-icons-rl-spinner animate-spin"})),m&&!a&&(0,o.createElement)("div",{className:"bb-admin-notice bb-admin-notice--error"},(0,o.createElement)("p",null,m)),!a&&!m&&u&&(0,o.createElement)("div",{className:"bb-admin-migration-modal__wizard",dangerouslySetInnerHTML:{__html:(0,f.pn)(u)}}))):null}function B({isOpen:e,onClose:t,migrationData:n}){const[a,r]=(0,s.useState)(!0),[i,d]=(0,s.useState)((0,l.__)("Migration wizard","buddyboss")),[u,b]=(0,s.useState)(null),[m,p]=(0,s.useState)(1),[f,_]=(0,s.useState)({}),[g,v]=(0,s.useState)(""),[y,h]=(0,s.useState)(!1),[E,w]=(0,s.useState)(""),N=(0,s.useRef)(t);N.current=t;const C=(0,s.useRef)(n);C.current=n;const x="footer"===(n&&n.wizardType||"footer"),k=n&&n.action||"",S=n&&n.total_reactions||0,D=u&&Array.isArray(u.target_emotions)&&u.target_emotions.length>0,I=(0,s.useCallback)((function(){r(!0),w(""),b(null),p(1),_({}),v("");const e=C.current&&C.current.action||"";if(d("like_to_emotions_action"===e?(0,l.__)("Convert Likes","buddyboss"):"emotions_to_like_action"===e?(0,l.__)("Convert Reactions","buddyboss"):(0,l.__)("Migration wizard","buddyboss")),!window.bbReactionAdminVars||!window.bbReactionAdminVars.ajax_url)return w((0,l.__)("Unable to load migration wizard.","buddyboss")),void r(!1);const t=C.current&&C.current.wizardType||"footer",n="footer"===t?"bb_pro_reaction_footer_migration":"bb_pro_reaction_migration_start_conversion",a="footer"===t?window.bbReactionAdminVars.nonce&&window.bbReactionAdminVars.nonce.footer_migration||"":window.bbReactionAdminVars.nonce&&window.bbReactionAdminVars.nonce.migration_start_conversion||"",i=new FormData;i.append("action",n),i.append("nonce",a),fetch(window.bbReactionAdminVars.ajax_url,{method:"POST",credentials:"same-origin",body:i}).then((function(e){return e.ok?e.text().then((function(e){try{return JSON.parse(e)}catch(t){throw new Error("Invalid JSON response — "+e.slice(0,200))}})):e.text().then((function(t){throw new Error("HTTP "+e.status+" — "+(t||"empty response").slice(0,200))}))})).then((function(e){if(e.success&&e.data){const t=!(!C.current||!C.current.action);if(e.data.label&&t&&d(e.data.label),e.data.data&&Array.isArray(e.data.data.reactions)){b(e.data.data);const t=C.current&&C.current.action||"";if("like_to_emotions_action"===t){const t={};e.data.data.reactions.forEach((function(e){"likes"===e.group&&(t[e.id]=!0)})),Object.keys(t).length>0&&_(t)}else!t&&Array.isArray(e.data.data.target_emotions)&&e.data.data.target_emotions.length>0&&v(String(e.data.data.target_emotions[0].value))}else e.data.message?w(e.data.message):w((0,l.__)("Migration wizard data is unavailable. Please update BuddyBoss Pro.","buddyboss"))}else e.data&&e.data.message?w(e.data.message):(window.console&&window.console.error&&window.console.error("Migration wizard AJAX returned no usable payload:",e),w((0,l.__)("Unable to load migration wizard.","buddyboss")));r(!1)})).catch((function(e){window.console&&window.console.error&&window.console.error("Migration wizard AJAX failed:",e),w((0,l.sprintf)(/* translators: %s: short error description (HTTP status or parse error). */ /* translators: %s: short error description (HTTP status or parse error). */ (0,l.__)("Unable to load migration wizard (%s).","buddyboss"),e&&e.message?e.message:(0,l.__)("unknown error","buddyboss"))),r(!1)}))}),[]);(0,s.useEffect)((function(){e&&I()}),[e,I]);const O=(0,s.useCallback)((function(e,t){_((function(n){const a=Object.assign({},n);return t?a[e]=!0:delete a[e],a}))}),[]),R=(0,s.useCallback)((function(e,t,n){_((function(a){const r=Object.assign({},a);return e.forEach((function(e){e.group===t&&(n?r[e.id]=!0:delete r[e.id])})),r}))}),[]),P=(0,s.useMemo)((function(){return!(!(Object.keys(f).length>0)||D&&""===String(g))}),[f,g,D]),M=(0,s.useMemo)((function(){if(!x)return(0,l.__)("Likes","buddyboss");if(!u||!Array.isArray(u.target_emotions))return"";const e=u.target_emotions.filter((function(e){return String(e.value)===String(g)}));return e.length>0?e[0].label:""}),[g,u,x]),B=(0,s.useMemo)((function(){return u&&Array.isArray(u.reactions)?u.reactions.reduce((function(e,t){return f[t.id]?e+(t.count||0):e}),0):0}),[f,u]),T=(0,s.useCallback)((function(){h(!0),w("");const e={migration_action:x?"footer":"switch",from_reactions:Object.keys(f)};D&&g&&(e.to_reactions=String(g));const t=new FormData;t.append("action","bb_admin_save_feature_settings"),t.append("nonce",window.bbAdminData&&window.bbAdminData.ajaxNonce||""),t.append("feature_id","reactions"),t.append("settings",JSON.stringify(e));const n=window.bbAdminData&&window.bbAdminData.ajaxUrl||window.ajaxurl||"/wp-admin/admin-ajax.php";fetch(n,{method:"POST",credentials:"same-origin",body:t}).then((function(e){if(!e.ok)throw new Error("HTTP "+e.status);return e.json()})).then((function(e){e.success?(window.dispatchEvent(new CustomEvent("bb-admin-refetch-feature")),N.current()):(h(!1),w(e.data&&e.data.message||(0,l.__)("Migration failed. Please try again.","buddyboss")))})).catch((function(){h(!1),w((0,l.__)("Migration failed. Please try again.","buddyboss"))}))}),[x,D,f,g]);if(!e)return null;const L=u&&Array.isArray(u.reactions)?u.reactions.filter((function(e){return"emotions"===e.group})):[],j=L.reduce((function(e,t){return e+(t.count||0)}),0),F=L.length>0&&L.every((function(e){return!!f[e.id]}));return(0,o.createElement)(c.Modal,{title:i,onRequestClose:t,className:"bb-admin-migration-modal bb-admin-settings-modal",__experimentalHideHeader:!1},(0,o.createElement)("div",{className:"bb-admin-migration-modal__content"},a&&(0,o.createElement)("div",{className:"bb-admin-migration-modal__loader"},(0,o.createElement)("span",{className:"bb-icons-rl bb-icons-rl-spinner animate-spin"})),E&&!a&&(0,o.createElement)("div",{className:"bb-admin-migration-modal__wizard bb-admin-migration-modal__wizard--no-data"},(0,o.createElement)("div",{className:"bb-admin-notice bb-admin-notice--error"},(0,o.createElement)("p",null,E)),(0,o.createElement)("div",{className:"bb-admin-migration-modal__footer"},(0,o.createElement)("button",{type:"button",className:"components-button is-primary",onClick:t},(0,l.__)("Close","buddyboss")))),!a&&!E&&u&&u.no_data&&(0,o.createElement)("div",{className:"bb-admin-migration-modal__wizard bb-admin-migration-modal__wizard--no-data"},(0,o.createElement)("p",{className:"bb-admin-migration-modal__no-data-heading"},(0,o.createElement)("strong",null,(0,l.__)("You have no reactions to convert","buddyboss"))),(0,o.createElement)("p",null,u.no_data_message||(0,l.__)("No reactions are available to convert.","buddyboss")),(0,o.createElement)("div",{className:"bb-admin-migration-modal__footer"},(0,o.createElement)("button",{type:"button",className:"components-button is-primary",onClick:t},(0,l.__)("Close","buddyboss")))),!a&&!E&&u&&!u.no_data&&1===m&&(0,o.createElement)("div",{className:"bb-admin-migration-modal__wizard bb-admin-migration-modal__wizard--screen-1"},"like_to_emotions_action"===k&&S>0?(0,o.createElement)("p",null,(0,l.__)("This action will convert the ","buddyboss"),(0,o.createElement)("strong",null,(0,l.sprintf)(/* translators: %s: formatted reaction count. */ /* translators: %s: formatted reaction count. */ (0,l.__)("%s Likes","buddyboss"),(0,A.ZV)(S)))," ",(0,l.__)("previously submitted by members on your site to an Emotion of your choice. You can perform this action at any point in the future using this migration wizard.","buddyboss")):(0,o.createElement)("p",null,D?(0,l.__)("This action will convert reactions previously submitted by members on your site to an Emotion of your choice. Reactions not selected can be converted at any point in the future using this migration wizard.","buddyboss"):(0,l.__)("This action will convert reactions previously submitted by members on your site to Likes. Reactions not selected can be converted at any point in the future using the migration wizard.","buddyboss")),!("like_to_emotions_action"===k&&S>0)&&(0,o.createElement)(o.Fragment,null,(0,o.createElement)("p",{className:"bb-admin-migration-modal__section-heading"},(0,o.createElement)("strong",null,D?(0,l.__)("Which reactions do you want to convert?","buddyboss"):(0,l.__)("Which reactions do you want to convert to Likes?","buddyboss"))),(0,o.createElement)("div",{className:"bb-admin-migration-modal__reactions"},u.reactions.filter((function(e){return"likes"===e.group})).map((function(e){return(0,o.createElement)(c.CheckboxControl,{key:e.id,label:(0,l.sprintf)(/* translators: 1: reaction label, 2: formatted count. */ /* translators: 1: reaction label, 2: formatted count. */ @@ -6,8 +6,9 @@ (0,l.__)("%1$s (%2$s)","buddyboss"),x?(0,l.__)("Emotions","buddyboss"):(0,l.__)("All emotions","buddyboss"),(0,A.ZV)(j)),checked:F,onChange:function(e){R(u.reactions,"emotions",e)},__nextHasNoMarginBottom:!0}),(0,o.createElement)("ul",{className:"bb-admin-migration-modal__reactions-list"},L.map((function(e){return(0,o.createElement)("li",{key:e.id},(0,o.createElement)(c.CheckboxControl,{label:(0,l.sprintf)(/* translators: 1: emotion label, 2: formatted count. */ /* translators: 1: emotion label, 2: formatted count. */ (0,l.__)("%1$s (%2$s)","buddyboss"),e.label,(0,A.ZV)(e.count)),checked:!!f[e.id],onChange:function(t){O(e.id,t)},__nextHasNoMarginBottom:!0}))}))))),D&&(0,o.createElement)(o.Fragment,null,(0,o.createElement)("p",{className:"bb-admin-migration-modal__section-heading"},(0,o.createElement)("strong",null,"like_to_emotions_action"===k?(0,l.__)("Which Emotion would you like to convert your Likes to?","buddyboss"):(0,l.__)("Which Emotion would you like to convert your reactions to?","buddyboss"))),(0,o.createElement)(c.SelectControl,{className:"bb-admin-migration-modal__target-select",value:g,options:[{value:"",label:(0,l.__)("Select an emotion","buddyboss")},...u.target_emotions.map((function(e){return{value:String(e.value),label:e.label}}))],onChange:function(e){v(e)},__nextHasNoMarginBottom:!0})),(0,o.createElement)("div",{className:"bb-admin-migration-modal__footer"},(0,o.createElement)("button",{type:"button",className:"components-button is-secondary",onClick:t},(0,l.__)("Cancel","buddyboss")),(0,o.createElement)("button",{type:"button",className:"components-button is-primary",onClick:function(){p(2)},disabled:!P},(0,l.__)("Continue","buddyboss")))),!a&&!E&&u&&!u.no_data&&2===m&&(0,o.createElement)("div",{className:"bb-admin-migration-modal__wizard bb-admin-migration-modal__wizard--screen-2"},(0,o.createElement)("p",null,(0,l.sprintf)(/* translators: 1: count of selected reactions, 2: target label. */ /* translators: 1: count of selected reactions, 2: target label. */ (0,l._n)("You are about to convert %1$d reaction to %2$s.","You are about to convert %1$d reactions to %2$s.",B,"buddyboss"),B,M)),(0,o.createElement)("ul",{className:"bb-admin-migration-modal__warnings"},(0,o.createElement)("li",null,(0,l.__)("The new reactions will be immediately visible on your site after being converted.","buddyboss")),(0,o.createElement)("li",null,(0,l.__)("Depending on the amount of data to convert, the migration may take a while.","buddyboss")),(0,o.createElement)("li",null,(0,l.__)("You will be unable to edit reactions while the conversion is in progress.","buddyboss")),(0,o.createElement)("li",null,(0,l.__)("This action cannot be undone, but you can convert reactions to another reaction in the future.","buddyboss")),(0,o.createElement)("li",null,(0,l.__)("We recommend backing up your site before migrating and performing this action during an off-peak period.","buddyboss"))),(0,o.createElement)("p",null,(0,l.__)("Do you want to start the conversion now?","buddyboss")),(0,o.createElement)("div",{className:"bb-admin-migration-modal__footer"},(0,o.createElement)("button",{type:"button",className:"components-button is-secondary",onClick:function(){p(1)},disabled:y},(0,l.__)("Back","buddyboss")),(0,o.createElement)("button",{type:"button",className:"components-button is-primary",onClick:T,disabled:y},y?(0,l.__)("Converting…","buddyboss"):(0,l.__)("Start conversion","buddyboss"))))))}function T({field:e,value:t,onChange:n}){const a=!!e.pro_notice?.show,r=t||{},i=r.icon||e.icon||"thumbs-up",s=r.text||e.text||(0,l.__)("Like","buddyboss");return(0,o.createElement)("div",{key:e.name,className:"bb-reaction-button-field"+(a?" bb-reaction-button-field--disabled":"")},(0,o.createElement)("div",{className:"bb-reaction-button-card"},(0,o.createElement)("div",{className:"bb-reaction-button-card__preview"},(0,o.createElement)("div",{className:"bb-reaction-button-card__icon-wrapper"},(0,o.createElement)("button",{type:"button",className:"bb-reaction-button-card__icon-btn",id:"bb-reaction-button-chooser",disabled:a},(0,o.createElement)("i",{className:`bb-icon-rf bb-icon-${i}`}))),(0,o.createElement)("div",{className:"bb-reaction-button-card__footer"},(0,o.createElement)("input",{name:"bb_reactions_button[text]",id:"bb-reaction-button-text",type:"text",maxLength:"12",value:s,placeholder:(0,l.__)("Like","buddyboss"),className:"bb-reaction-button-card__text-input",disabled:a,readOnly:a,onChange:a=>{return r=a.target.value,(o="object"==typeof t&&null!==t?{...t}:{}).text=r,o.icon||(o.icon=i),void n(e.name,o);var r,o}}),(0,o.createElement)(c.DropdownMenu,{icon:(0,o.createElement)("i",{className:"bb-icons-rl-dots-three"}),label:(0,l.__)("More options","buddyboss"),className:"bb-reaction-button-card__menu-btn"},(({onClose:e})=>(0,o.createElement)(c.MenuGroup,{className:"bb_dropdown_menu_group"},(0,o.createElement)(c.MenuItem,{icon:(0,o.createElement)(k.C,{name:"note-pencil"}),iconPosition:"left",onClick:()=>{var t;e(),(t=document.getElementById("bb-reaction-button-chooser"))&&window.jQuery&&window.jQuery(t).trigger("click")}},(0,l.__)("Edit","buddyboss"))))))),(0,o.createElement)("input",{type:"hidden",name:"bb_reactions_button[icon]",id:"bb-reaction-button-hidden-field",value:i})))}var L=i(8537);function j({topic:e,onEdit:t,onDelete:n,dragHandleProps:a,isDragging:r,isDragOver:i}){var s=e.permission_type,d="mods_admins"===s||"Admins"===s?(0,l.__)("Admins","buddyboss"):(0,l.__)("Anyone","buddyboss"),u="bb-topic-list__item";return r&&(u+=" bb-topic-list__item--dragging"),i&&(u+=" bb-topic-list__item--drag-over"),(0,o.createElement)("div",{className:u,"data-topic-id":e.topic_id},(0,o.createElement)("span",{className:"bb-topic-list__drag-handle",...a},(0,o.createElement)(k.C,{name:"list"})),(0,o.createElement)("span",{className:"bb-topic-list__name"},e.name),(0,o.createElement)("span",{className:"bb-topic-list__permission"},d),(0,o.createElement)("div",{className:"bb-topic-list__actions"},(0,o.createElement)(c.DropdownMenu,{icon:(0,o.createElement)("i",{className:"bb-icons-rl-dots-three"}),label:(0,l.__)("More options","buddyboss"),className:"bb-topic-list__menu-btn"},(function({onClose:a}){return(0,o.createElement)(c.MenuGroup,{className:"bb_dropdown_menu_group"},(0,o.createElement)(c.MenuItem,{icon:(0,o.createElement)(k.C,{name:"note-pencil"}),iconPosition:"left",onClick:function(){a(),t(e)}},(0,l.__)("Edit","buddyboss")),(0,o.createElement)(c.MenuItem,{icon:(0,o.createElement)(k.C,{name:"trash"}),iconPosition:"left",isDestructive:!0,onClick:function(){a(),n(e)}},(0,l.__)("Delete","buddyboss")))}))))}function F({isOpen:e,onClose:t,onSave:n,topic:a,isSaving:r}){var i=!!a,d=i&&a.name||"",u=i&&a.permission_type||"anyone",b="mods_admins"===u||"Admins"===u?"mods_admins":"anyone",m=(0,s.useState)(d),p=m[0],f=m[1],_=(0,s.useState)(b),g=_[0],v=_[1],y=(0,s.useState)(""),h=y[0],E=y[1];return(0,s.useEffect)((function(){if(e){f(i&&a.name||"");var t=i&&a.permission_type||"anyone";v("mods_admins"===t||"Admins"===t?"mods_admins":"anyone"),E("")}}),[e,a]),e?(0,o.createElement)(c.Modal,{title:i?(0,l.__)("Edit Topic","buddyboss"):(0,l.__)("Add New Topic","buddyboss"),onRequestClose:t,className:"bb-topic-modal bb-admin-settings-modal",shouldCloseOnClickOutside:!1},(0,o.createElement)("div",{className:"bb-topic-modal__body"},(0,o.createElement)("div",{className:"bb-admin-settings-modal__row--separator"},(0,o.createElement)(c.TextControl,{label:(0,l.__)("Topic Name","buddyboss"),value:p,onChange:function(e){f(e),h&&E("")},placeholder:(0,l.__)("Enter topic name","buddyboss"),__nextHasNoMarginBottom:!0}),h&&(0,o.createElement)("p",{className:"bb-topic-modal__error"},h)),(0,o.createElement)("div",{className:"bb-topic-modal__permission"},(0,o.createElement)("label",{className:"bb-topic-modal__permission-label"},(0,l.__)("Posting Permissions","buddyboss")),(0,o.createElement)(c.RadioControl,{selected:g,options:[{label:(0,l.__)("Anyone","buddyboss"),value:"anyone"},{label:(0,l.__)("Admins","buddyboss"),value:"mods_admins"}],onChange:v}))),(0,o.createElement)("div",{className:"bb-topic-modal__footer bb-admin-settings-modal__footer"},(0,o.createElement)(c.Button,{variant:"secondary",onClick:t,disabled:r},(0,l.__)("Cancel","buddyboss")),(0,o.createElement)(c.Button,{variant:"primary",onClick:function(){var e=p.trim();e?(E(""),n({name:e,permission_type:g,topic_id:i?a.topic_id:0})):E((0,l.__)("Topic name is required.","buddyboss"))},isBusy:r,disabled:r},i?(0,l.__)("Save","buddyboss"):(0,l.__)("Add Topic","buddyboss")))):null}function U({isOpen:e,onClose:t,onConfirm:n,topic:a,availableTopics:r,migrateNonce:i,isSaving:d}){var u=(0,s.useState)("migrate"),b=u[0],m=u[1],p=(0,s.useState)(""),f=p[0],_=p[1];if((0,s.useEffect)((function(){e&&a&&(m("migrate"),_(""))}),[e,a]),!e||!a)return null;var g=(r||[]).map((function(e){return{label:e.name,value:String(e.topic_id)}}));g.unshift({label:(0,l.__)("Select topic","buddyboss"),value:""});var v=d||"migrate"===b&&!f;return(0,o.createElement)(c.Modal,{title:/* translators: %s: Topic name. */ -wp.i18n.sprintf((0,l.__)('Deleting "%s"?',"buddyboss"),a.name),onRequestClose:t,className:"bb-topic-delete-modal bb-admin-settings-modal",shouldCloseOnClickOutside:!1},(0,o.createElement)("div",{className:"bb-topic-delete-modal__body"},(0,o.createElement)("p",{className:"bb-topic-delete-modal__warning"},(0,l.__)("Deleting this topic will remove it from all posts it is assigned to and cannot be undone. Those posts will have no topic unless you assign a new one using the options below.","buddyboss")),(0,o.createElement)(c.RadioControl,{selected:b,options:[{label:(0,l.__)("Move posts to another topic","buddyboss"),value:"migrate"},{label:(0,l.__)("Delete the topic","buddyboss"),value:"delete"}],onChange:m}),"migrate"===b&&(0,o.createElement)("div",{className:"bb-topic-delete-modal__migrate-select"},(0,o.createElement)(c.SelectControl,{value:f,options:g,onChange:_,__nextHasNoMarginBottom:!0}))),(0,o.createElement)("div",{className:"bb-topic-delete-modal__footer"},(0,o.createElement)(c.Button,{variant:"secondary",onClick:t,disabled:d},(0,l.__)("Cancel","buddyboss")),(0,o.createElement)(c.Button,{variant:"primary",isDestructive:!0,onClick:function(){n({old_topic_id:a.topic_id,migrate_type:b,new_topic_id:"migrate"===b?f:0,nonce:i})},isBusy:d,disabled:v},(0,l.__)("Confirm & Delete","buddyboss"))))}function H(e,t){var n=window.ajaxurl||window.bbAdminData&&window.bbAdminData.ajaxUrl||"/wp-admin/admin-ajax.php",a=window.bbAdminData&&window.bbAdminData.ajaxNonce||"",r=new FormData;return r.append("action",e),a&&r.append("nonce",a),Object.keys(t).forEach((function(e){var n=t[e];Array.isArray(n)?n.forEach((function(t){r.append(e+"[]",t)})):r.append(e,n)})),fetch(n,{method:"POST",credentials:"same-origin",body:r}).then((function(e){if(!e.ok)throw new Error("HTTP "+e.status+": "+e.statusText);return e.json()}))}function G({field:e,value:t,values:n,onChange:a}){var r=(0,s.useState)((function(){return e.topics_data||[]})),i=r[0],d=r[1],u=e.nonces||{},b=e.topics_limit||20,m=(0,s.useState)(!1),p=m[0],f=m[1],_=(0,s.useState)(!1),g=_[0],v=_[1],y=(0,s.useState)(!1),h=y[0],E=y[1],w=(0,s.useState)(null),N=w[0],C=w[1],x=(0,s.useState)(null),k=x[0],S=x[1],A=(0,s.useState)([]),D=A[0],I=A[1],O=(0,s.useState)(""),R=O[0],P=O[1],M=(0,s.useState)(!1),B=M[0],T=M[1],L=(0,s.useState)(!1),G=L[0],z=L[1],V=(0,s.useState)(""),W=V[0],$=V[1],q=(0,s.useState)(null),Y=q[0],J=q[1],Z=(0,s.useState)(null),K=Z[0],X=Z[1],Q=(0,s.useCallback)((function(t){T(!0),H("bb_add_topic",{name:t.name,permission_type:t.permission_type,item_type:"activity",item_id:0,nonce:u.add||""}).then((function(t){if(T(!1),t.success&&t.data&&t.data.content&&t.data.content.topic){var n=t.data.content.topic,r=i.concat([n]);d(r),a(e.name,r),f(!1),$("")}else $(t.data&&t.data.message?t.data.message:(0,l.__)("Failed to add topic.","buddyboss"))})).catch((function(){T(!1),$((0,l.__)("An error occurred while adding the topic.","buddyboss"))}))}),[i,u,e.name,a]),ee=(0,s.useCallback)((function(t){T(!0),H("bb_add_topic",{topic_id:t.topic_id,name:t.name,permission_type:t.permission_type,item_type:"activity",item_id:0,nonce:u.add||""}).then((function(n){if(T(!1),n.success&&n.data&&n.data.content&&n.data.content.topic){var r=n.data.content.topic,o=String(t.topic_id),s=i.map((function(e){return String(e.topic_id)===o?r:e}));d(s),a(e.name,s),v(!1),C(null),$("")}else $(n.data&&n.data.message?n.data.message:(0,l.__)("Failed to update topic.","buddyboss"))})).catch((function(){T(!1),$((0,l.__)("An error occurred while updating the topic.","buddyboss"))}))}),[i,u,e.name,a]),te=(0,s.useCallback)((function(e){S(e),z(!0),H("bb_delete_topic",{topic_id:e.topic_id,item_type:"activity",item_id:0,nonce:u.delete||""}).then((function(e){z(!1),e.success&&e.data?(I(e.data.topic_lists||[]),P(e.data.nonce||""),E(!0),$("")):$(e.data&&e.data.message?e.data.message:(0,l.__)("Failed to initiate topic deletion.","buddyboss"))})).catch((function(){z(!1),$((0,l.__)("An error occurred while initiating topic deletion.","buddyboss"))}))}),[u]),ne=(0,s.useCallback)((function(t){T(!0),H("bb_migrate_topic",{old_topic_id:t.old_topic_id,migrate_type:t.migrate_type,new_topic_id:t.new_topic_id||0,item_type:"activity",item_id:0,nonce:t.nonce}).then((function(n){if(T(!1),n.success){var r=i.filter((function(e){return String(e.topic_id)!==String(t.old_topic_id)}));d(r),a(e.name,r),E(!1),S(null),$("")}else $(n.data&&n.data.message?n.data.message:(0,l.__)("Failed to delete topic.","buddyboss"))})).catch((function(){T(!1),$((0,l.__)("An error occurred while deleting the topic.","buddyboss"))}))}),[i,e.name,a]),ae=function(e){return function(t){J(e),t.dataTransfer.effectAllowed="move"}},re=function(e){return function(t){t.preventDefault(),t.dataTransfer.dropEffect="move",X(e)}},ie=function(){if(null!==Y&&null!==K&&Y!==K){var t=i.slice(),n=i.slice(),r=n.splice(Y,1)[0];n.splice(K,0,r),d(n),a(e.name,n),H("bb_update_topics_order",{topic_ids:n.map((function(e){return e.topic_id})),nonce:u.order||""}).then((function(n){n.success||(d(t),a(e.name,t),$((0,l.__)("Failed to save topic order.","buddyboss")))})).catch((function(){d(t),a(e.name,t),$((0,l.__)("Failed to save topic order.","buddyboss"))}))}J(null),X(null)},oe=function(){ie()},se=i.length"object"!=typeof t||Array.isArray(t)?Array.isArray(t)&&t.includes(e):!!a[e]&&"0"!==a[e]&&0!==a[e];return(0,o.createElement)("div",null,(0,o.createElement)("div",{className:"bb-admin-settings-field__checkbox-list-cards"},(e.options||[]).map((t=>(0,o.createElement)("div",{key:t.value,className:`bb_share_item bb_share_item_${t.label}`},(0,o.createElement)("div",{className:"bb_share_icon"},t.icon&&(0,o.createElement)("i",{className:t.icon})),(0,o.createElement)("div",{className:"bb_share_footer"},(0,o.createElement)("span",null,t.label),(0,o.createElement)(c.CheckboxControl,{checked:r(t.value),className:"bb_share_checkbox",onChange:a=>{const i={};(e.options||[]).forEach((function(e){e.value===t.value?i[e.value]=a?1:0:i[e.value]=r(e.value)?1:0})),n(e.name,i)},__nextHasNoMarginBottom:!0})))))),e.description&&(0,o.createElement)(s.RawHTML,{className:"bb-admin-settings-form__field-description"},(0,f.pn)(e.description)))}var V={google:i.p+"images/google.3f5e24a5.png",facebook:i.p+"images/facebook.23caa94d.png",twitter:i.p+"images/twitter.6a0c3dea.png",linkedin:i.p+"images/linkedin.4ca0b443.png",apple:i.p+"images/apple.bee6da10.png"};function W({field:e,value:t,onChange:n,disabled:a}){var r=(0,s.useState)(e.providers||[]),i=r[0],d=r[1],u=(0,s.useState)(null),b=u[0],m=u[1],p=(0,s.useRef)({}),_=(0,s.useRef)({}),g=(0,s.useRef)(null),v=(0,s.useRef)(null),y=(0,s.useRef)(null),h=(0,s.useRef)(null),E=(0,s.useState)(null),w=E[0],x=E[1];(0,s.useEffect)((function(){return function(){clearTimeout(g.current)}}),[]),(0,s.useEffect)((function(){var e=function(e){var t=e.target;if(t.closest("#bb-hello-container")&&(t.matches(".close-modal")||t.closest(".close-modal")||t.matches("#sso_cancel")||t.closest("#sso_cancel"))){e.stopImmediatePropagation(),e.preventDefault();var n=document.getElementById("bb-hello-container"),a=document.getElementById("bb-hello-backdrop");n&&(n.style.display="none"),a&&(a.style.display="none"),document.body.classList.remove("bp-disable-scroll")}};return document.addEventListener("click",e,!0),function(){document.removeEventListener("click",e,!0)}}),[]);var k=(0,s.useCallback)((function(e){y.current=e}),[]),S=(0,s.useCallback)((function(e,t,n){e.preventDefault(),h.current=t,x(n)}),[]),A=(0,s.useCallback)((function(){var e=y.current,t=h.current;if(y.current=null,h.current=null,x(null),null!==e&&null!==t&&e!==t){var n=i.slice(),a=n.splice(e,1)[0];n.splice(t,0,a),d(n);var r=n.map((function(e){return e.id})),o=window.bbSSOAdminVars?window.bbSSOAdminVars.nonce:"",s=new FormData;s.append("action","bb-social-login"),s.append("nonce",o),s.append("view","orderProviders"),r.forEach((function(e){s.append("ordering[]",e)})),window.dispatchEvent(new CustomEvent(C,{detail:{status:"saving",message:(0,l.__)("Saving changes...","buddyboss")}})),fetch(window.bbAdminData.ajaxUrl,{method:"POST",body:s}).then((function(e){return e.json()})).then((function(e){e.success?window.dispatchEvent(new CustomEvent(C,{detail:{status:"success",message:(0,l.__)("Settings saved.","buddyboss")}})):window.dispatchEvent(new CustomEvent(C,{detail:{status:"error",message:e.data&&e.data.message?e.data.message:(0,l.__)("Failed to save order.","buddyboss")}}))})).catch((function(){window.dispatchEvent(new CustomEvent(C,{detail:{status:"error",message:(0,l.__)("Failed to save order.","buddyboss")}}))}))}}),[i]);return(0,o.createElement)("div",{className:"bb-admin-sso-providers bb-sso-list"},(0,o.createElement)("div",{className:"bb-admin-sso-providers__grid"},i.map((function(e,t){var n=function(e){return void 0!==e.enabled&&!!e.enabled}(e),r=b===e.id;return(0,o.createElement)("div",{key:e.id,className:"bb-admin-sso-providers__card bb-sso-item"+(n?"":" bb-admin-sso-providers__card--disabled is-disabled")+(w===e.id&&y.current!==t?" bb-admin-sso-providers__card--drag-over":""),draggable:!a,onDragStart:function(){k(t)},onDragOver:function(n){S(n,t,e.id)},onDrop:A,onDragEnd:function(){y.current=null,h.current=null,x(null)},"data-provider":e.id,"data-state":e.state||""},(0,o.createElement)("button",{type:"button",className:"bb-box-item-edit bb-box-item-edit--sso bb-admin-sso-providers__edit-trigger","aria-hidden":"true",tabIndex:-1},(0,o.createElement)("i",{className:"bb-icon-l bb-icon-pencil"})),(0,o.createElement)("div",{className:"bb-admin-sso-providers__card-icon"},e.icon?(0,o.createElement)("img",{src:(0,f.Pl)(e.icon),alt:e.label}):V[e.id]?(0,o.createElement)("img",{src:V[e.id],alt:e.label}):(0,o.createElement)("span",{className:"bb-admin-sso-providers__card-icon-placeholder"},e.label.charAt(0)),(0,o.createElement)(c.CheckboxControl,{checked:n,className:"bb-admin-sso-providers__card-checkbox",disabled:a||!e.tested,onChange:function(){!function(e){if(!_.current[e.id]&&e.tested){_.current[e.id]=!0;var t=e.state,n="enabled"===t?"disabled":"enabled";d((function(t){return t.map((function(t){return t.id===e.id?Object.assign({},t,{enabled:"enabled"===n,state:n}):t}))})),window.dispatchEvent(new CustomEvent(C,{detail:{status:"saving",message:(0,l.__)("Saving changes...","buddyboss")}}));var a=window.bbSSOAdminVars||{},r=new FormData;r.append("action","bb_sso_enable_provider"),r.append("nonce",a.nonce||""),r.append("provider",e.id),r.append("state",t),fetch(a.ajax_url||window.bbAdminData.ajaxUrl,{method:"POST",credentials:"same-origin",body:r}).then((function(e){return e.json()})).then((function(n){n.success?(clearTimeout(g.current),g.current=setTimeout((function(){window.dispatchEvent(new CustomEvent(C,{detail:{status:"success",message:(0,l.__)("Settings saved.","buddyboss")}}))}),500),d((function(e){var t=e.filter((function(e){return"enabled"===e.state})).map((function(e){return e.id})),n=1===t.length&&"twitter"===t[0]||0===t.length;return v.current!==n&&(v.current=n,window.dispatchEvent(new CustomEvent(N,{detail:{fields:["bb-additional-sso-name","bb-additional-sso-profile-picture"],disabled:n}}))),e}))):(d((function(n){return n.map((function(n){return n.id===e.id?Object.assign({},n,{enabled:"enabled"===t,state:t}):n}))})),window.dispatchEvent(new CustomEvent(C,{detail:{status:"error",message:(0,l.__)("Failed to save.","buddyboss")}})))})).catch((function(){d((function(n){return n.map((function(n){return n.id===e.id?Object.assign({},n,{enabled:"enabled"===t,state:t}):n}))})),window.dispatchEvent(new CustomEvent(C,{detail:{status:"error",message:(0,l.__)("Failed to save.","buddyboss")}}))})).finally((function(){delete _.current[e.id]}))}}(e)},__nextHasNoMarginBottom:!0})),(0,o.createElement)("div",{className:"bb-admin-sso-providers__card-footer"},(0,o.createElement)("span",{className:"bb-admin-sso-providers__card-label"},e.label),(0,o.createElement)("button",{type:"button",ref:function(t){p.current[e.id]=t},className:"bb-admin-sso-providers__card-menu",disabled:a,"aria-label":e.label+" "+(0,l.__)("options","buddyboss"),onClick:function(){m(r?null:e.id)}},(0,o.createElement)("i",{className:"bb-icons-rl-dots-three"})),r&&p.current[e.id]&&(0,o.createElement)(c.Popover,{anchor:p.current[e.id],position:"bottom right",onClose:function(){m(null)},className:"bb-admin-sso-providers__menu-popover"},(0,o.createElement)("div",{className:"bb-admin-sso-providers__menu"},(0,o.createElement)("button",{type:"button",className:"bb-admin-sso-providers__menu-item",onClick:function(){!function(e){m(null);var t=document.querySelector('.bb-sso-list .bb-sso-item[data-provider="'+e+'"]');if(t){var n=t.querySelector(".bb-box-item-edit--sso");n&&n.click()}}(e.id)}},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-pencil-simple"}),(0,l.__)("Edit","buddyboss"))))))}))),i.map((function(e){var t=JSON.stringify({url:e.test_url||"",width:e.popup_width||800,height:e.popup_height||600,test_status:e.tested||0,state:e.state||"not-configured"});return(0,o.createElement)("input",{key:"hidden_"+e.id,type:"hidden",id:"sso_validate_popup_"+e.id+"_data",name:"sso_validate_popup_"+e.id+"_data",defaultValue:"","data-hidden-attr":t})})),(0,o.createElement)("div",{id:"bb-hello-backdrop",className:"bb-hello-backdrop-sso bb-modal-backdrop",style:{display:"none"},onClickCapture:function(e){e.stopPropagation()}}),(0,o.createElement)("div",{id:"bb-hello-container",className:"bb-hello-sso bb-modal-panel bb-modal-panel--sso",role:"dialog","aria-labelledby":"bb-hello-title",style:{display:"none"}}))}var $=i(9021),q=i(9786),Y=[{value:"",label:(0,l.__)("Default","buddyboss")},{value:"0",label:(0,l.__)("Custom URL","buddyboss")}];function J(){var e=(0,s.useState)([]),t=e[0],n=e[1],a=(0,s.useState)(!0),r=a[0],i=a[1],u=(0,s.useState)(1),b=u[0],m=u[1],p=(0,s.useState)({}),_=p[0],g=p[1],v=(0,s.useRef)({});(0,s.useEffect)((function(){var e=new AbortController;return i(!0),(0,d.WT)({signal:e.signal}).then((function(e){e.success&&e.data&&e.data.member_types&&n(e.data.member_types)})).catch((function(){})).finally((function(){i(!1)})),function(){e.abort(),Object.keys(v.current).forEach((function(e){clearTimeout(v.current[e])}))}}),[]);var y=Math.ceil(t.length/5),h=t.slice(5*(b-1),5*b),E=(0,s.useCallback)((function(e,t,a){n((function(n){return n.map((function(n){if(n.id!==e)return n;var r=Object.assign({},n);return r[t]=a,"login_redirection"===t&&"0"!==a&&(r.custom_login_redirection=""),"logout_redirection"===t&&"0"!==a&&(r.custom_logout_redirection=""),r}))}));var r=e+"-"+t;v.current[r]&&clearTimeout(v.current[r]),v.current[r]=setTimeout((function(){delete v.current[r],window.dispatchEvent(new CustomEvent(C,{detail:{status:"saving",message:(0,l.__)("Saving changes...","buddyboss")}}));var n={};n[t]=a,g((function(t){var n=Object.assign({},t);return n[e]=!0,n})),(0,d.Ug)(e,n).then((function(e){e.success?window.dispatchEvent(new CustomEvent(C,{detail:{status:"success",message:(0,l.__)("Settings saved.","buddyboss")}})):window.dispatchEvent(new CustomEvent(C,{detail:{status:"error",message:e.data&&e.data.message||(0,l.__)("Failed to save.","buddyboss")}}))})).catch((function(){window.dispatchEvent(new CustomEvent(C,{detail:{status:"error",message:(0,l.__)("Failed to save.","buddyboss")}}))})).finally((function(){g((function(t){var n=Object.assign({},t);return delete n[e],n}))}))}),800)}),[]);if(r)return(0,o.createElement)("div",{className:"bb-profile-type-redirects__loading"},(0,o.createElement)(c.Spinner,null));if(!t.length){var w=(0,f.Pl)("admin.php?page=bb-settings&tab=members&panel=profile_types");return(0,o.createElement)("p",{className:"bb-profile-type-redirects__empty"},(0,l.__)("No profile types found. Create profile types under","buddyboss")," ",(0,o.createElement)("a",{href:w,onClick:function(e){e.defaultPrevented||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||0!==e.button||(e.preventDefault(),window.history.pushState({},"",w),window.dispatchEvent(new window.PopStateEvent("popstate")))}},(0,l.__)("Members Profile > Profile Types","buddyboss")),".")}return(0,o.createElement)("div",{className:"bb-profile-type-redirects"},h.map((function(e){var t=!!_[e.id],n={};return e.label_color&&"custom"===e.label_color.type&&(n.backgroundColor=e.label_color.background_color||"#1e1e1e",n.color=e.label_color.text_color||"#fff"),(0,o.createElement)("div",{key:e.id,className:"bb-profile-type-redirects__row"+(t?" bb-profile-type-redirects__row--saving":"")},(0,o.createElement)("div",{className:"bb-profile-type-redirects__type"},(0,o.createElement)("span",{className:"bb-profile-type-redirects__badge",style:n},(0,L.decodeEntities)(e.post_title||e.key))),(0,o.createElement)("div",{className:"bb-profile-type-redirects__fields"},(0,o.createElement)("div",{className:"bb-profile-type-redirects__field"},(0,o.createElement)("label",{className:"bb-profile-type-redirects__field-label"},(0,l.__)("After Login","buddyboss")),(0,o.createElement)($.x,{key:"login-"+e.id,value:e.login_redirection||"",onChange:function(t){E(e.id,"login_redirection",t)},asyncAction:"bb_admin_search_published_pages",placeholder:(0,l.__)("Default","buddyboss"),staticOptions:Y}),"0"===e.login_redirection&&(0,o.createElement)(c.TextControl,{label:(0,l.__)("Custom URL","buddyboss"),hideLabelFromVision:!0,value:e.custom_login_redirection||"",onChange:function(t){E(e.id,"custom_login_redirection",t)},placeholder:(0,l.__)("Paste URL","buddyboss"),type:"url",__nextHasNoMarginBottom:!0})),(0,o.createElement)("div",{className:"bb-profile-type-redirects__field"},(0,o.createElement)("label",{className:"bb-profile-type-redirects__field-label"},(0,l.__)("After Logout","buddyboss")),(0,o.createElement)($.x,{key:"logout-"+e.id,value:e.logout_redirection||"",onChange:function(t){E(e.id,"logout_redirection",t)},asyncAction:"bb_admin_search_published_pages",placeholder:(0,l.__)("Default","buddyboss"),staticOptions:Y}),"0"===e.logout_redirection&&(0,o.createElement)(c.TextControl,{label:(0,l.__)("Custom URL","buddyboss"),hideLabelFromVision:!0,value:e.custom_logout_redirection||"",onChange:function(t){E(e.id,"custom_logout_redirection",t)},placeholder:(0,l.__)("Paste URL","buddyboss"),type:"url",__nextHasNoMarginBottom:!0}))))})),y>1&&(0,o.createElement)("div",{className:"bb-profile-type-redirects__pagination"},(0,o.createElement)("button",{type:"button",className:"bb-profile-type-redirects__page-btn",disabled:1===b,onClick:function(){m(Math.max(1,b-1))}},"‹"),(0,q.m)(b,y).map((function(e,t){return"..."===e?(0,o.createElement)("span",{key:"ellipsis-"+t,className:"bb-profile-type-redirects__page-ellipsis"},"…"):(0,o.createElement)("button",{key:e,type:"button",className:"bb-profile-type-redirects__page-btn"+(e===b?" bb-profile-type-redirects__page-btn--active":""),onClick:function(){m(e)}},e)})),(0,o.createElement)("button",{type:"button",className:"bb-profile-type-redirects__page-btn",disabled:b===y,onClick:function(){m(Math.min(y,b+1))}},"›")))}function Z({field:e,value:t,onChange:n}){var a=e.access_control_data||{},r=wp.hooks.applyFilters("bb.accessControl.types",a.types||[],e),i=!!e.threaded,[u,b]=(0,s.useState)(t?.["access-control-type"]||a.current_type||""),[m,p]=(0,s.useState)((function(){return a.current_sub_type_key&&t?.[a.current_sub_type_key]?t[a.current_sub_type_key]:a.current_sub_type||""})),[_,g]=(0,s.useState)(a.options||[]),[v,y]=(0,s.useState)(a.recipient_options||a.options||[]),[h,E]=(0,s.useState)(t?.["access-control-options"]||[]),[w,N]=(0,s.useState)(!1),[C,x]=(0,s.useState)(""),k=(0,s.useRef)(null),[S,A]=(0,s.useState)((function(){return i?function(e,t,n){var a={};if(!e||!e.length)return a;for(var r=0;r0,M=!w&&u&&0===_.length;P&&(M=!w&&m&&0===_.length);return(0,o.createElement)("div",{className:"bb-access-control-field"},e.description&&(0,o.createElement)(s.RawHTML,{className:"bb-admin-settings-form__field-description bb-access-control-field__description"},(0,f.pn)(e.description)),(0,o.createElement)("div",{className:"bb-access-control-field__selects"},(0,o.createElement)(c.SelectControl,{value:u,options:[{label:a.select_placeholder||(0,l.__)("Select Role","buddyboss"),value:""}].concat(r.map((function(e){return{label:(0,L.decodeEntities)(e.label),value:e.value,disabled:e.disabled||!1}}))),onChange:function(t){if(b(t),p(""),E([]),A({}),!t)return g([]),y([]),void n({"access-control-type":"","access-control-options":[]});for(var a=null,i=0;i0)return g([]),void y([]);N(!0),x(""),k.current&&k.current.abort();var o=new AbortController;k.current=o,(0,d.ZU)("get_access_control_level_options",{value:t,key:e.name,format:"json"},{signal:o.signal}).then((function(n){var a=n?.data?.options||[];a=wp.hooks.applyFilters("bb.accessControl.options",a,e,t),g(a),y(n?.data?.recipient_options||n?.data?.options||[]),N(!1)})).catch((function(e){e&&"AbortError"===e.name||(N(!1),x((0,l.__)("Failed to load options. Please try again.","buddyboss")))}))},__nextHasNoMarginBottom:!0}),P&&(0,o.createElement)(c.SelectControl,{value:m,options:[{label:R.sub_types.placeholder||(0,l.__)("Select Type","buddyboss"),value:""}].concat(R.sub_types.items.map((function(e){return{label:(0,L.decodeEntities)(e.label),value:e.value,disabled:e.disabled||!1}}))),onChange:function(t){p(t),E([]),A({});var n=D();if(!t||!n||!n.sub_types)return g([]),void y([]);N(!0),x(""),k.current&&k.current.abort();var a=new AbortController;k.current=a,(0,d.ZU)(n.sub_types.action,{value:t,key:e.name,format:"json"},{signal:a.signal}).then((function(n){var a=n?.data?.options||[];a=wp.hooks.applyFilters("bb.accessControl.options",a,e,u,t),g(a),y(n?.data?.recipient_options||n?.data?.options||[]),N(!1)})).catch((function(e){e&&"AbortError"===e.name||(N(!1),x((0,l.__)("Failed to load options. Please try again.","buddyboss")))}))},__nextHasNoMarginBottom:!0})),w&&(0,o.createElement)(c.Spinner,null),C&&(0,o.createElement)("p",{className:"bb-access-control-field__error"},C),M&&!C&&(0,o.createElement)("p",{className:"bb-access-control-field__no-options"},(0,l.__)("No options found.","buddyboss")),!w&&_.length>0&&(0,o.createElement)("div",{className:"bb-access-control-field__toggle-list"+(i?" bb-access-control-field__toggle-list--threaded":"")},_.map((function(t){var a=String(t.value),r=-1!==h.indexOf(a),s=i?S[a]||{mode:"all",specific:[]}:null,d=e.threaded_sub_label?(0,L.decodeEntities)(e.threaded_sub_label):"",b=(0,o.createElement)(o.Fragment,null,(0,o.createElement)("span",{className:"bb-access-control-field__option-label"},(0,L.decodeEntities)(t.label)),d&&(0,o.createElement)("span",{className:"bb-access-control-field__option-suffix"}," "+d));return(0,o.createElement)("div",{key:a,className:"bb-access-control-field__toggle-item"+(i&&r?" bb-access-control-field__toggle-item--active":"")},(0,o.createElement)("div",{className:"bb-access-control-field__toggle-row"},(0,o.createElement)(c.ToggleControl,{label:i?b:(0,L.decodeEntities)(t.label),checked:r,onChange:function(e){!function(e,t){var a=t?h.concat([e]):h.filter((function(t){return t!==e}));E(a);var r=Object.assign({},S);i&&(t?r[e]={mode:"all",specific:[]}:delete r[e],A(r)),n(I(u,m,a,r))}(a,e)},__nextHasNoMarginBottom:!0}),i&&function(t,n,a){return(0,o.createElement)("div",{className:"bb-access-control-field__threaded-radio"},(0,o.createElement)("label",{className:"bb-access-control-field__threaded-radio-option"},(0,o.createElement)("input",{type:"radio",name:"ac-mode-"+e.name+"-"+t,value:"all",checked:"all"===n.mode,disabled:!a,onChange:function(){O(t,"all")}}),(0,l.__)("All","buddyboss")),(0,o.createElement)("label",{className:"bb-access-control-field__threaded-radio-option"},(0,o.createElement)("input",{type:"radio",name:"ac-mode-"+e.name+"-"+t,value:"specific",checked:"specific"===n.mode,disabled:!a,onChange:function(){O(t,"specific")}}),(0,l.__)("Specific","buddyboss")))}(a,s,r)),i&&r&&"specific"===s.mode&&function(e,t){var a=v&&v.length?v:_;return(0,o.createElement)("div",{className:"bb-access-control-field__threaded-checkboxes"},a.map((function(a){var r=String(a.value);return(0,o.createElement)(c.CheckboxControl,{key:r,className:"bb-access-control-field__threaded-checkbox",label:(0,L.decodeEntities)(a.label),checked:-1!==t.specific.indexOf(r),onChange:function(t){!function(e,t,a){var r,i=Object.assign({},S),o=i[e]?.specific||[];r=a?o.concat([t]):o.filter((function(e){return e!==t})),i[e]={mode:"specific",specific:r},A(i),n(I(u,m,h,i))}(e,r,t)}})})))}(a,s))}))),a.notice&&(0,o.createElement)("div",{className:"bb-access-control-field__notice"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-info"}),(0,o.createElement)("span",null,a.notice)))}const K=e=>{const{field:t,onChange:n}=e,a=e.value||{},r=t.notification_groups||[];return r.length?(0,o.createElement)("div",{className:"bb-notification-types"},r.map((e=>e.fields&&e.fields.length?(0,o.createElement)("div",{key:e.key,className:"bb-notification-types__group"},e.admin_label&&(0,o.createElement)("div",{className:"bb-notification-types__group-header"},e.admin_label),(0,o.createElement)("div",{className:"bb-notification-types__rows"},e.fields.map((e=>{const t=(e=>a[e.key]&&void 0!==a[e.key].main?"yes"===a[e.key].main:e.checked)(e),r=e.sub_types||{},i=Object.keys(r).filter((e=>r[e]&&r[e].is_render));return(0,o.createElement)("div",{key:e.key,className:"bb-notification-types__row"+(t?"":" bb-notification-types__row--disabled"),"aria-disabled":t?void 0:"true"},(0,o.createElement)("div",{className:"bb-notification-types__toggle"},(0,o.createElement)(c.ToggleControl,{label:(0,L.decodeEntities)(e.label),checked:t,onChange:t=>{e.read_only||((e,t)=>{const r=Object.assign({},a);r[e]||(r[e]={}),r[e]=Object.assign({},r[e],{main:t?"yes":"no"}),n(r)})(e.key,t)},disabled:e.read_only,__nextHasNoMarginBottom:!0}),e.tooltip&&(0,o.createElement)("span",{className:"bb-notification-types__tooltip",title:(0,L.decodeEntities)(e.tooltip)},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-info"}))),(0,o.createElement)("div",{className:"bb-notification-types__sub-types"},i.map((i=>{const s=r[i],l=((e,t)=>a[e.key]&&void 0!==a[e.key][t]?"yes"===a[e.key][t]:!(!e.sub_types||!e.sub_types[t])&&"yes"===e.sub_types[t].is_checked)(e,i),d=((e,t,n)=>!n||!(!e.sub_types||!e.sub_types[t])&&e.sub_types[t].disabled)(e,i,t);return(0,o.createElement)("div",{key:i,className:"bb-notification-types__sub-type"+(d?" bb-notification-types__sub-type--disabled":"")},(0,o.createElement)(c.CheckboxControl,{label:(0,L.decodeEntities)(s.label),checked:l,onChange:t=>{e.read_only||((e,t,r)=>{const i=Object.assign({},a);i[e]||(i[e]={}),i[e]=Object.assign({},i[e]),i[e][t]=r?"yes":"no",n(i)})(e.key,i,t)},disabled:d||e.read_only,__nextHasNoMarginBottom:!0}))}))),(0,o.createElement)("div",{className:"bb-notification-types__email-template"},(e=>{if(!e)return null;const t=!e.has_templates||e.missing;let n,a;e.has_templates?e.missing?(a=e.count-(e.existing_count||0),n=a>1?(0,l.__)("Add Email Templates","buddyboss"):(0,l.__)("Add Email Template","buddyboss")):n=e.count>1?(0,l.__)("Email Templates","buddyboss"):(0,l.__)("Email Template","buddyboss"):n=(0,l.__)("Add Email Template","buddyboss");let r="bb-notification-types__email-link";return t&&(r+=" bb-notification-types__email-link--missing"),(0,o.createElement)("a",{href:(0,f.Pl)(e.url||"#"),className:r,target:"_blank",rel:"noopener noreferrer"},n)})(e.email_template)))})))):null))):(0,o.createElement)("p",{className:"bb-notification-types__empty"},(0,l.__)("No notification types registered.","buddyboss"))};var X=i(9236);function Q({field:e,value:t,onChange:n,disabled:a,sanitizedDescription:r}){var i=t&&"object"==typeof t&&!Array.isArray(t),s=i?t:{},d=function(e){return i?!!s[e]&&"0"!==s[e]&&0!==s[e]:Array.isArray(t)&&t.includes(e)},u={};(e.options||[]).forEach((function(e){u[e.value]=e}));var b=Object.keys(s),m=[];b.forEach((function(e){u[e]&&m.push(u[e])})),(e.options||[]).forEach((function(e){b.includes(e.value)||m.push(e)}));var p=["bb_group_nav_order","bb_user_nav_order"].indexOf(e.name)>=0,f=function(e,t){var n=!!e.badge_label,a=p&&!t;return n||a?(0,o.createElement)("span",{className:"bb-admin-settings-field__checkbox-list-label"},(0,o.createElement)("span",{className:"bb-admin-settings-field__checkbox-list-label-text"},e.label),n&&(0,o.createElement)("span",{className:"bb-admin-settings-field__checkbox-list-badge"},e.badge_label),a&&(0,o.createElement)("span",{className:"bb-admin-settings-field__checkbox-list-status-tag","aria-hidden":"true"},(0,l.__)("Hidden","buddyboss"))):e.label};return p&&0===m.length?(0,o.createElement)("div",{className:"bb-admin-empty-state"},(0,o.createElement)("p",{className:"bb-admin-empty-state__description"},(0,l.__)("There are no navigation items to order yet. Create a group first to populate this list.","buddyboss"))):(0,o.createElement)(X.JY,{onDragEnd:function(t){if(t.destination&&t.destination.index!==t.source.index){var a=Array.from(m),r=a.splice(t.source.index,1)[0];a.splice(t.destination.index,0,r);var i={};a.forEach((function(e){i[e.value]=void 0!==s[e.value]?"string"==typeof s[e.value]?parseInt(s[e.value],10):s[e.value]:0})),n(e.name,i)}}},e.description&&(0,o.createElement)("p",{className:"bb-admin-settings-form__field-head-description",dangerouslySetInnerHTML:{__html:r||""}}),(0,o.createElement)(X.gL,{droppableId:e.name},(t=>(0,o.createElement)("div",{ref:t.innerRef,...t.droppableProps,className:"bb-admin-settings-field__checkbox-list"},m.map(((t,r)=>(0,o.createElement)(X.sx,{key:t.value,draggableId:t.value,index:r},((r,i)=>(0,o.createElement)("div",{ref:r.innerRef,...r.draggableProps,...r.dragHandleProps,className:"bb-admin-settings-field__checkbox-list-item"+(i.isDragging?" is-dragging":"")},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-list"}),(0,o.createElement)(c.ToggleControl,{label:f(t,d(t.value)),checked:d(t.value),onChange:a=>{var r={};m.forEach((function(e){e.value===t.value?r[e.value]=a?1:0:r[e.value]=void 0!==s[e.value]?"string"==typeof s[e.value]?parseInt(s[e.value],10):s[e.value]:0})),n(e.name,r)},disabled:a||!!t.disabled,__nextHasNoMarginBottom:!0})))))),t.placeholder))))}function ee({action:e,slug:t,label:n,className:a,nonceKey:r,busyLabel:i}){const[c,d]=(0,s.useState)(!1),[u,b]=(0,s.useState)(""),m=(0,s.useRef)(null);return(0,s.useEffect)((function(){return function(){m.current&&m.current.abort()}}),[]),(0,o.createElement)(o.Fragment,null,(0,o.createElement)("button",{type:"button",className:a,onClick:()=>{if(c)return;const n=window.bbAdminData||{},a=n[r||"addonNonce"];if(!(t&&e&&a&&n.ajaxUrl))return void b((0,l.__)("This action is not available right now. Please reload the page and try again.","buddyboss"));d(!0),b("");const i=new FormData;i.append("action",e),i.append("_ajax_nonce",a),i.append("slug",t),i.append("extension_type","plugin");const o=new AbortController;m.current=o,fetch(n.ajaxUrl,{method:"POST",body:i,signal:o.signal}).then((function(e){return e.json()})).then((function(e){if(e&&e.success)return void window.location.reload();const t=e&&e.data&&e.data.message?e.data.message:(0,l.__)("Activation failed. Please try again.","buddyboss");b(t),d(!1)})).catch((function(e){e&&"AbortError"===e.name||(b((0,l.__)("Activation failed. Please try again.","buddyboss")),d(!1))}))},disabled:c,"aria-busy":c?"true":void 0},c?i||(0,l.__)("Activating…","buddyboss"):n),u&&(0,o.createElement)("p",{className:"bb-admin-empty-state__error",role:"alert"},u))}function te({imageUrl:e,originalFile:t,nonces:n,uploadConfig:a,ajaxUrl:r,onSave:i,onCancel:c}){var d=(0,s.useRef)(null),u=(0,s.useRef)(null),b=(0,s.useRef)(null),[m,p]=(0,s.useState)(!1),[f,_]=(0,s.useState)(""),[g,v]=(0,s.useState)(!1),[y,h]=(0,s.useState)({x:0,y:0,size:150}),[E,w]=(0,s.useState)({min:50,max:400}),N=(0,s.useRef)(!1),C=(0,s.useRef)({x:0,y:0,cropX:0,cropY:0}),x=(0,s.useRef)(y);(0,s.useEffect)((function(){x.current=y}),[y]);var k=400;(0,s.useEffect)((function(){return function(){b.current&&b.current.abort()}}),[]);var S=(0,s.useCallback)((function(){var e=d.current,t=u.current;if(e&&t&&g){var n=e.getContext("2d"),a=Math.min(k/t.naturalWidth,k/t.naturalHeight),r=t.naturalWidth*a,i=t.naturalHeight*a,o=(k-r)/2,s=(k-i)/2;n.clearRect(0,0,k,k),n.drawImage(t,o,s,r,i),n.fillStyle="rgba(0, 0, 0, 0.5)",n.fillRect(0,0,k,k),n.clearRect(y.x,y.y,y.size,y.size),n.save(),n.beginPath(),n.rect(y.x,y.y,y.size,y.size),n.clip(),n.drawImage(t,o,s,r,i),n.restore(),n.strokeStyle="#ffffff",n.lineWidth=2,n.strokeRect(y.x,y.y,y.size,y.size)}}),[y,g]);return(0,s.useEffect)((function(){S()}),[S]),(0,s.useEffect)((function(){var e=function(e){if(N.current){var t=d.current;if(t){var n=t.getBoundingClientRect(),a=k/n.width,r=k/n.height,i=(e.clientX-n.left)*a,o=(e.clientY-n.top)*r,s=i-C.current.x,l=o-C.current.y,c=x.current,u=Math.max(0,Math.min(k-c.size,C.current.cropX+s)),b=Math.max(0,Math.min(k-c.size,C.current.cropY+l));h({x:u,y:b,size:c.size})}}},t=function(){N.current=!1};return document.addEventListener("mousemove",e),document.addEventListener("mouseup",t),function(){document.removeEventListener("mousemove",e),document.removeEventListener("mouseup",t)}}),[]),(0,s.useEffect)((function(){var e=function(e){"Escape"!==e.key||m||c()};return document.addEventListener("keydown",e),function(){document.removeEventListener("keydown",e)}}),[m,c]),(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-overlay",role:"dialog","aria-modal":"true","aria-label":(0,l.__)("Upload Custom Avatar","buddyboss")},(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-modal"},(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-header"},(0,o.createElement)("h3",{className:"bb-admin-image-upload__crop-title"},(0,l.__)("Upload Custom Avatar","buddyboss")),(0,o.createElement)("button",{type:"button",className:"bb-admin-image-upload__crop-close",onClick:c,disabled:m,"aria-label":(0,l.__)("Close","buddyboss")},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-x","aria-hidden":"true"}))),(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-body"},(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-canvas-wrap"},(0,o.createElement)("img",{ref:u,src:e,crossOrigin:"anonymous",style:{display:"none"},onLoad:function(){var e=u.current;if(e){v(!0);var t=Math.min(k/e.naturalWidth,k/e.naturalHeight),n=e.naturalWidth*t,a=e.naturalHeight*t,r=Math.min(n,a),i=Math.round(.6*r),o=(k-n)/2,s=(k-a)/2,l=Math.max(50,Math.round(.15*r)),c=Math.round(r);w({min:l,max:c}),h({x:Math.round(o+(n-i)/2),y:Math.round(s+(a-i)/2),size:i})}},alt:""}),(0,o.createElement)("canvas",{ref:d,width:k,height:k,className:"bb-admin-image-upload__crop-canvas",onMouseDown:function(e){var t=d.current;if(t){var n=t.getBoundingClientRect(),a=k/n.width,r=k/n.height,i=(e.clientX-n.left)*a,o=(e.clientY-n.top)*r,s=x.current;i>=s.x&&i<=s.x+s.size&&o>=s.y&&o<=s.y+s.size&&(N.current=!0,C.current={x:i,y:o,cropX:s.x,cropY:s.y},e.preventDefault())}}})),g&&(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-resize"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-minus"}),(0,o.createElement)("input",{type:"range",className:"bb-admin-image-upload__crop-slider",min:E.min,max:E.max,value:y.size,onChange:function(e){var t=parseInt(e.target.value,10),n=x.current,a=u.current;if(a){var r=Math.min(k/a.naturalWidth,k/a.naturalHeight),i=a.naturalWidth*r,o=a.naturalHeight*r,s=(k-i)/2,l=(k-o)/2,c=n.x+n.size/2,d=n.y+n.size/2,b=t/2,m=Math.max(s,Math.min(s+i-t,c-b)),p=Math.max(l,Math.min(l+o-t,d-b));h({x:Math.round(m),y:Math.round(p),size:t})}}}),(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-plus"})),f&&(0,o.createElement)("p",{className:"bb-admin-image-upload__error",role:"alert"},f)),(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-footer"},(0,o.createElement)("button",{type:"button",className:"bb-admin-image-upload__btn bb-admin-image-upload__btn--cancel",onClick:c,disabled:m},(0,l.__)("Cancel","buddyboss")),(0,o.createElement)("button",{type:"button",className:"bb-admin-image-upload__btn bb-admin-image-upload__btn--upload",onClick:function(){var e=u.current;if(e){p(!0),_(""),b.current&&b.current.abort(),b.current=new AbortController;var o=Math.min(k/e.naturalWidth,k/e.naturalHeight),s=(k-e.naturalWidth*o)/2,c=(k-e.naturalHeight*o)/2,d=Math.max(0,Math.round((y.x-s)/o)),m=Math.max(0,Math.round((y.y-c)/o)),f=Math.round(y.size/o),g=f,v=new FormData;v.append("nonce",n.avatarCropstore||""),v.append("object",a.object),v.append("item_id",a.item_id),v.append("item_type",a.item_type||""),v.append("original_file",t),v.append("type","crop"),v.append("crop_x",d),v.append("crop_y",m),v.append("crop_w",f),v.append("crop_h",g),function(e,t,n,a){n.append("action","bp_avatar_set");var r={method:"POST",credentials:"same-origin",body:n};return a&&(r.signal=a),fetch(e,r).then((function(e){if(!e.ok)throw new Error("HTTP "+e.status);return e.json()}))}(r,0,v,b.current.signal).then((function(e){if(e.success&&e.data){var t=e.data.avatar||e.data.url||"";i(t)}else{var n=e.data&&e.data.message||(0,l.__)("Crop failed.","buddyboss");_(n),p(!1)}})).catch((function(e){"AbortError"!==e.name&&(_(e.message||(0,l.__)("Crop failed.","buddyboss")),p(!1))}))}},disabled:m||!g},m?(0,l.__)("Uploading...","buddyboss"):(0,l.__)("Crop & Upload","buddyboss")))))}var ne=700,ae=400,re=1950/450;function ie({imageUrl:e,basename:t,originalName:n,nonces:a,uploadConfig:r,ajaxUrl:i,onSave:c,onCancel:d}){var u=(0,s.useRef)(null),b=(0,s.useRef)(null),m=(0,s.useRef)(null),[p,f]=(0,s.useState)(!1),[_,g]=(0,s.useState)(""),[v,y]=(0,s.useState)(!1),[h,E]=(0,s.useState)({x:0,y:0,width:200,height:46}),[w,N]=(0,s.useState)({min:100,max:ne}),C=(0,s.useRef)(!1),x=(0,s.useRef)({x:0,y:0,cropX:0,cropY:0}),k=(0,s.useRef)(h);(0,s.useEffect)((function(){k.current=h}),[h]);var S=(0,s.useMemo)((function(){var e=r&&r.dimensions;return e&&e.width&&e.height?e.width/e.height:re}),[r]);(0,s.useEffect)((function(){return function(){m.current&&m.current.abort()}}),[]);var A=(0,s.useCallback)((function(){var e=b.current;if(!e||!e.naturalWidth||!e.naturalHeight)return{left:0,top:0,width:ne,height:ae,scale:1};var t=Math.min(ne/e.naturalWidth,ae/e.naturalHeight),n=e.naturalWidth*t,a=e.naturalHeight*t;return{left:(ne-n)/2,top:(ae-a)/2,width:n,height:a,scale:t}}),[]),D=(0,s.useCallback)((function(){var e=u.current,t=b.current;if(e&&t&&v){var n=e.getContext("2d"),a=A();n.clearRect(0,0,ne,ae),n.drawImage(t,a.left,a.top,a.width,a.height),n.fillStyle="rgba(0, 0, 0, 0.5)",n.fillRect(0,0,ne,ae),n.clearRect(h.x,h.y,h.width,h.height),n.save(),n.beginPath(),n.rect(h.x,h.y,h.width,h.height),n.clip(),n.drawImage(t,a.left,a.top,a.width,a.height),n.restore(),n.strokeStyle="#ffffff",n.lineWidth=2,n.strokeRect(h.x,h.y,h.width,h.height)}}),[h,v,A]);(0,s.useEffect)((function(){D()}),[D]);var I=(0,s.useRef)(null);return(0,s.useEffect)((function(){var e=function(e){if(C.current){var t=u.current;if(t){var n=t.getBoundingClientRect(),a=ne/n.width,r=ae/n.height,i=(e.clientX-n.left)*a,o=(e.clientY-n.top)*r,s=i-x.current.x,l=o-x.current.y,c=k.current,d=A(),b=d.left,m=d.top,p=d.left+d.width-c.width,f=d.top+d.height-c.height,_=Math.max(b,Math.min(p,x.current.cropX+s)),g=Math.max(m,Math.min(f,x.current.cropY+l));null!==I.current&&cancelAnimationFrame(I.current),I.current=requestAnimationFrame((function(){I.current=null,E({x:_,y:g,width:c.width,height:c.height})}))}}},t=function(){C.current=!1};return document.addEventListener("mousemove",e),document.addEventListener("mouseup",t),function(){document.removeEventListener("mousemove",e),document.removeEventListener("mouseup",t),null!==I.current&&(cancelAnimationFrame(I.current),I.current=null)}}),[A]),(0,s.useEffect)((function(){var e=function(e){"Escape"!==e.key||p||d()};return document.addEventListener("keydown",e),function(){document.removeEventListener("keydown",e)}}),[p,d]),(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-overlay",role:"dialog","aria-modal":"true","aria-label":(0,l.__)("Upload Custom Cover","buddyboss")},(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-modal"},(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-header"},(0,o.createElement)("h3",{className:"bb-admin-image-upload__crop-title"},(0,l.__)("Upload Custom Cover","buddyboss")),(0,o.createElement)("button",{type:"button",className:"bb-admin-image-upload__crop-close",onClick:d,disabled:p,"aria-label":(0,l.__)("Close","buddyboss")},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-x","aria-hidden":"true"}))),(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-body"},(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-canvas-wrap"},(0,o.createElement)("img",{ref:b,src:e,crossOrigin:"anonymous",style:{display:"none"},onLoad:function(){if(b.current){y(!0);var e=A(),t=Math.floor(e.height*S),n=Math.min(Math.floor(.8*e.width),t),a=Math.max(60,Math.floor(.2*Math.min(e.width,t))),r=Math.floor(Math.min(e.width,t));rr&&(n=r);var i=Math.round(n/S);N({min:a,max:r}),E({x:Math.round(e.left+(e.width-n)/2),y:Math.round(e.top+(e.height-i)/2),width:n,height:i})}},alt:""}),(0,o.createElement)("canvas",{ref:u,width:ne,height:ae,className:"bb-admin-image-upload__crop-canvas",onMouseDown:function(e){var t=u.current;if(t){var n=t.getBoundingClientRect(),a=ne/n.width,r=ae/n.height,i=(e.clientX-n.left)*a,o=(e.clientY-n.top)*r,s=k.current;i>=s.x&&i<=s.x+s.width&&o>=s.y&&o<=s.y+s.height&&(C.current=!0,x.current={x:i,y:o,cropX:s.x,cropY:s.y},e.preventDefault())}}})),v&&w.max>w.min&&(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-resize"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-minus"}),(0,o.createElement)("input",{type:"range",className:"bb-admin-image-upload__crop-slider",min:w.min,max:w.max,value:h.width,onChange:function(e){var t=parseInt(e.target.value,10);if(!(isNaN(t)||t<=0)){var n=k.current,a=A(),r=Math.round(t/S),i=n.x+n.width/2,o=n.y+n.height/2,s=Math.max(a.left,Math.min(a.left+a.width-t,i-t/2)),l=Math.max(a.top,Math.min(a.top+a.height-r,o-r/2));E({x:Math.round(s),y:Math.round(l),width:t,height:r})}}}),(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-plus"})),_&&(0,o.createElement)("p",{className:"bb-admin-image-upload__error",role:"alert"},_)),(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-footer"},(0,o.createElement)("button",{type:"button",className:"bb-admin-image-upload__btn bb-admin-image-upload__btn--cancel",onClick:d,disabled:p},(0,l.__)("Cancel","buddyboss")),(0,o.createElement)("button",{type:"button",className:"bb-admin-image-upload__btn bb-admin-image-upload__btn--upload",onClick:function(){var e=b.current;if(e)if("user"===r.object||"group"===r.object){f(!0),g(""),m.current&&m.current.abort(),m.current=new AbortController;var o=A(),s=o.scale,d=Math.max(0,Math.round((h.x-o.left)/s)),u=Math.max(0,Math.round((h.y-o.top)/s)),p=Math.round(h.width/s),_=Math.round(h.height/s);d+p>e.naturalWidth&&(p=e.naturalWidth-d),u+_>e.naturalHeight&&(_=e.naturalHeight-u);var v=new FormData;v.append("nonce",a&&a.coverCropstore||""),v.append("object",r.object),v.append("basename",t),v.append("crop_x",d),v.append("crop_y",u),v.append("crop_w",p),v.append("crop_h",_),n&&v.append("original_name",n),function(e,t,n,a){n.append("action","bb_admin_cover_image_set");var r={method:"POST",credentials:"same-origin",body:n};return a&&(r.signal=a),fetch(e,r).then((function(e){if(!e.ok)throw new Error("HTTP "+e.status);if(-1===(e.headers.get("content-type")||"").indexOf("application/json"))throw new Error((0,l.__)("Unexpected server response.","buddyboss"));return e.json()}))}(i,0,v,m.current.signal).then((function(e){if(e.success&&e.data&&e.data.url)c(e.data.url);else{var t=e.data&&e.data.message||(0,l.__)("Crop failed.","buddyboss");g(t),f(!1)}})).catch((function(e){"AbortError"!==e.name&&(g(e.message||(0,l.__)("Crop failed.","buddyboss")),f(!1))}))}else g((0,l.__)("Upload configuration is invalid (missing object).","buddyboss"))},disabled:p||!v},p?(0,l.__)("Uploading…","buddyboss"):(0,l.__)("Crop & Upload","buddyboss")))))}var oe={avatar:!0,cover:!0};function se(e,t,n,a){n.append("action",t);var r={method:"POST",credentials:"same-origin",body:n};return a&&(r.signal=a),fetch(e,r).then((function(e){if(!e.ok)throw new Error("HTTP "+e.status);if(-1===(e.headers.get("content-type")||"").indexOf("application/json"))throw new Error((0,l.__)("Unexpected server response.","buddyboss"));return e.json()}))}function le({uploadConfig:e,uploadUrl:t,onUpload:n,onRemove:a,disabled:r}){var i=(0,s.useState)(t?"preview":"idle"),c=i[0],d=i[1],u=(0,s.useState)(t||""),b=u[0],m=u[1],_=(0,s.useState)(""),g=_[0],v=_[1],y=(0,s.useState)(null),h=y[0],E=y[1],w=(0,s.useRef)(null),N=(0,s.useRef)(null);(0,s.useEffect)((function(){t?(m(t),d("preview")):(m(""),d("idle"))}),[t]),(0,s.useEffect)((function(){return function(){N.current&&N.current.abort()}}),[]);var C="avatar"===e.type,x=window.bbAdminData&&window.bbAdminData.uploadNonces||{},k=window.bbAdminData&&window.bbAdminData.ajaxUrl||"/wp-admin/admin-ajax.php",S=oe[e.type]?e.type:"unknown",A=function(){w.current&&w.current.click()},D=(0,s.useCallback)((function(){E(null),d("idle")}),[]),I=(0,s.useCallback)((function(t){E(null),m(t),d("preview"),p("group"===e.object?"groups":"members"),n&&n(t)}),[n,e.object]),O="uploading"===c||"removing"===c,R=e.help_text||"",P=e.label||"";return(0,o.createElement)("div",{className:"bb-admin-image-upload bb-admin-image-upload--"+S},P&&(0,o.createElement)("p",{className:"bb-admin-image-upload__label"},P),("idle"===c||"uploading"===c)&&(0,o.createElement)("div",{className:"bb-admin-image-upload__placeholder-area"},(0,o.createElement)("div",{className:"bb-admin-image-upload__placeholder"},O?(0,o.createElement)("span",{className:"bb-admin-image-upload__spinner"}):(0,o.createElement)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"33",height:"28",viewBox:"0 0 33 28",fill:"none"},(0,o.createElement)("path",{d:"M30 0H2.5C1.83696 0 1.20107 0.263392 0.732233 0.732233C0.263392 1.20107 0 1.83696 0 2.5V25C0 25.663 0.263392 26.2989 0.732233 26.7678C1.20107 27.2366 1.83696 27.5 2.5 27.5H30C30.663 27.5 31.2989 27.2366 31.7678 26.7678C32.2366 26.2989 32.5 25.663 32.5 25V2.5C32.5 1.83696 32.2366 1.20107 31.7678 0.732233C31.2989 0.263392 30.663 0 30 0ZM30 2.5V18.5547L25.9266 14.4828C25.6944 14.2506 25.4188 14.0664 25.1154 13.9407C24.8121 13.8151 24.4869 13.7504 24.1586 13.7504C23.8302 13.7504 23.5051 13.8151 23.2018 13.9407C22.8984 14.0664 22.6228 14.2506 22.3906 14.4828L19.2656 17.6078L12.3906 10.7328C11.9218 10.2643 11.2862 10.0012 10.6234 10.0012C9.96068 10.0012 9.32504 10.2643 8.85625 10.7328L2.5 17.0891V2.5H30ZM2.5 20.625L10.625 12.5L23.125 25H2.5V20.625ZM30 25H26.6609L21.0359 19.375L24.1609 16.25L30 22.0906V25ZM18.75 9.375C18.75 9.00416 18.86 8.64165 19.066 8.33331C19.272 8.02496 19.5649 7.78464 19.9075 7.64273C20.2501 7.50081 20.6271 7.46368 20.9908 7.53603C21.3545 7.60837 21.6886 7.78695 21.9508 8.04917C22.213 8.3114 22.3916 8.64549 22.464 9.0092C22.5363 9.37292 22.4992 9.74992 22.3573 10.0925C22.2154 10.4351 21.975 10.728 21.6667 10.934C21.3584 11.14 20.9958 11.25 20.625 11.25C20.1277 11.25 19.6508 11.0525 19.2992 10.7008C18.9475 10.3492 18.75 9.87228 18.75 9.375Z",fill:"#666666"}))),(0,o.createElement)("div",{className:"bb-admin-image-upload__actions"},(0,o.createElement)("button",{type:"button",className:"bb-admin-image-upload__btn bb-admin-image-upload__btn--upload",onClick:A,disabled:r||O},!O&&(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-upload-simple"}),O?(0,l.__)("Uploading...","buddyboss"):(0,l.__)("Upload","buddyboss")))),"preview"===c&&b&&(0,o.createElement)("div",{className:"bb-admin-image-upload__preview-area"},(0,o.createElement)("div",{className:"bb-admin-image-upload__preview"},(0,o.createElement)("img",{src:(0,f.Pl)(b),alt:(0,l.__)("Uploaded image","buddyboss")})),(0,o.createElement)("div",{className:"bb-admin-image-upload__actions"},(0,o.createElement)("button",{type:"button",className:"bb-admin-image-upload__btn bb-admin-image-upload__btn--upload",onClick:A,disabled:r},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-upload-simple"}),(0,l.__)("Upload","buddyboss")),(0,o.createElement)("button",{type:"button",className:"bb-admin-image-upload__btn bb-admin-image-upload__btn--remove",onClick:function(){d("removing"),v(""),N.current&&N.current.abort(),N.current=new AbortController;var t,n=new FormData;if(n.append("object",e.object),n.append("item_id",e.item_id),n.append("item_type",e.item_type||""),C){var r="group"===e.object?x.avatarDeleteGroup:x.avatarDelete;n.append("nonce",r||""),t="bp_avatar_delete"}else n.append("nonce",x.coverDelete||""),t="bp_cover_image_delete";se(k,t,n,N.current.signal).then((function(t){if(t.success)m(""),d("idle"),p("group"===e.object?"groups":"members"),a&&a();else{var n=t.data&&t.data.message||(0,l.__)("Remove failed.","buddyboss");v(n),d("preview")}})).catch((function(e){"AbortError"!==e.name&&(v(e.message||(0,l.__)("Remove failed.","buddyboss")),d("preview"))}))},disabled:r},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-x"}),(0,l.__)("Remove","buddyboss")))),"removing"===c&&(0,o.createElement)("div",{className:"bb-admin-image-upload__placeholder-area"},(0,o.createElement)("div",{className:"bb-admin-image-upload__placeholder"},(0,o.createElement)("span",{className:"bb-admin-image-upload__spinner"})),(0,o.createElement)("div",{className:"bb-admin-image-upload__actions"},(0,o.createElement)("button",{type:"button",className:"bb-admin-image-upload__btn bb-admin-image-upload__btn--upload",disabled:!0},(0,l.__)("Removing...","buddyboss")))),"cropping"===c&&h&&C&&(0,o.createElement)(te,{imageUrl:h.imageUrl,originalFile:h.originalFile,nonces:x,uploadConfig:e,ajaxUrl:k,onSave:I,onCancel:D}),"cropping"===c&&h&&!C&&(0,o.createElement)(ie,{imageUrl:h.imageUrl,basename:h.basename,originalName:h.originalName||"",nonces:x,uploadConfig:e,ajaxUrl:k,onSave:I,onCancel:D}),(0,o.createElement)("input",{ref:w,type:"file",accept:"image/jpeg,image/png",className:"bb-admin-image-upload__file-input",style:{display:"none"},onChange:function(t){var n=t.target.files&&t.target.files[0];n&&(/^image\/(jpe?g|png)$/i.test(n.type)?n.size>10485760?v((0,l.__)("File size must be less than 10 MB.","buddyboss")):(v(""),d("uploading"),C?function(t){N.current&&N.current.abort(),N.current=new AbortController;var n=new FormData;n.append("file",t,t.name),n.append("_wpnonce",x.uploader||""),n.append("bp_params[object]",e.object),n.append("bp_params[item_id]",e.item_id),n.append("bp_params[item_type]",e.item_type||""),se(k,"bp_avatar_upload",n,N.current.signal).then((function(e){if(e.success&&e.data){var t=e.data.url||"";E({imageUrl:t,originalFile:t}),d("cropping")}else{var n=e.data&&e.data.message||(0,l.__)("Upload failed.","buddyboss");v(n),d("idle")}})).catch((function(e){"AbortError"!==e.name&&(v(e.message||(0,l.__)("Upload failed.","buddyboss")),d("idle"))}))}(n):function(t){N.current&&N.current.abort(),N.current=new AbortController;var n=new FormData;n.append("file",t,t.name),n.append("nonce",x.coverCropstore||""),n.append("object",e.object),se(k,"bb_admin_cover_image_upload_temp",n,N.current.signal).then((function(e){if(e.success&&e.data&&e.data.url&&e.data.basename)E({imageUrl:e.data.url,basename:e.data.basename,originalFile:e.data.url,originalName:e.data.original_name||""}),d("cropping");else{var t=e.data&&e.data.message||(0,l.__)("Upload failed.","buddyboss");v(t),d("idle")}})).catch((function(e){"AbortError"!==e.name&&(v(e.message||(0,l.__)("Upload failed.","buddyboss")),d("idle"))}))}(n),w.current&&(w.current.value="")):v((0,l.__)("Please select a JPG or PNG image.","buddyboss")))},tabIndex:-1,"aria-hidden":"true"}),R&&(0,o.createElement)("p",{className:"bb-admin-image-upload__help"},R),g&&(0,o.createElement)("p",{className:"bb-admin-image-upload__error",role:"alert"},g))}const ce=i.p+"images/cover-image.90ea6556.png";function de({alignment:e}){var t="bb-admin-settings-field__header-preview";return(0,o.createElement)("div",{className:t+" "+t+"--"+e},(0,o.createElement)("div",{className:t+"-cover"}),(0,o.createElement)("div",{className:t+"-content"},(0,o.createElement)("div",{className:t+"-avatar"},(0,o.createElement)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"22",height:"17",viewBox:"0 0 22 17",fill:"none"},(0,o.createElement)("path",{d:"M11 9C12.873 9 14.57 9.62 15.815 10.487C16.998 11.312 18 12.538 18 13.857C18 14.581 17.691 15.181 17.204 15.627C16.746 16.048 16.148 16.321 15.532 16.507C14.301 16.88 12.68 17 11 17C9.32 17 7.699 16.88 6.468 16.507C5.852 16.321 5.254 16.048 4.795 15.627C4.31 15.182 4 14.582 4 13.858C4 12.539 5.002 11.313 6.185 10.488C7.43 9.62 9.127 9 11 9ZM18 10C19.044 10 19.992 10.345 20.693 10.833C21.333 11.28 22 12.023 22 12.929C22 13.446 21.775 13.875 21.44 14.182C21.134 14.463 20.756 14.628 20.411 14.732C19.941 14.874 19.386 14.947 18.81 14.979C18.932 14.634 19 14.259 19 13.857C19 12.322 18.041 11.018 16.968 10.113C17.3069 10.0381 17.6529 10.0002 18 10ZM4 10C4.358 10.0013 4.702 10.039 5.032 10.113C3.96 11.018 3 12.322 3 13.857C3 14.259 3.068 14.634 3.19 14.979C2.614 14.947 2.06 14.874 1.589 14.732C1.244 14.628 0.866 14.463 0.559 14.182C0.383027 14.0244 0.242284 13.8314 0.145961 13.6156C0.0496383 13.3999 -9.78689e-05 13.1663 1.44582e-07 12.93C1.44582e-07 12.025 0.666 11.281 1.307 10.834C2.09986 10.2905 3.03871 9.9997 4 10ZM17.5 4C18.163 4 18.7989 4.26339 19.2678 4.73223C19.7366 5.20107 20 5.83696 20 6.5C20 7.16304 19.7366 7.79893 19.2678 8.26777C18.7989 8.73661 18.163 9 17.5 9C16.837 9 16.2011 8.73661 15.7322 8.26777C15.2634 7.79893 15 7.16304 15 6.5C15 5.83696 15.2634 5.20107 15.7322 4.73223C16.2011 4.26339 16.837 4 17.5 4ZM4.5 4C5.16304 4 5.79893 4.26339 6.26777 4.73223C6.73661 5.20107 7 5.83696 7 6.5C7 7.16304 6.73661 7.79893 6.26777 8.26777C5.79893 8.73661 5.16304 9 4.5 9C3.83696 9 3.20107 8.73661 2.73223 8.26777C2.26339 7.79893 2 7.16304 2 6.5C2 5.83696 2.26339 5.20107 2.73223 4.73223C3.20107 4.26339 3.83696 4 4.5 4ZM11 0C12.0609 0 13.0783 0.421427 13.8284 1.17157C14.5786 1.92172 15 2.93913 15 4C15 5.06087 14.5786 6.07828 13.8284 6.82843C13.0783 7.57857 12.0609 8 11 8C9.93913 8 8.92172 7.57857 8.17157 6.82843C7.42143 6.07828 7 5.06087 7 4C7 2.93913 7.42143 1.92172 8.17157 1.17157C8.92172 0.421427 9.93913 0 11 0Z",fill:"#999999"}))),(0,o.createElement)("div",{className:t+"-lines"},(0,o.createElement)("div",{className:t+"-line "+t+"-line--short"}),(0,o.createElement)("div",{className:t+"-line "+t+"-line--long"}))))}function ue({position:e}){var t="bb-admin-settings-field__notification-position";return(0,o.createElement)("div",{className:t+" "+t+"--"+e},(0,o.createElement)("div",{className:t+"-bar"}))}var be={},me={"cover-buddyboss":function(){return(0,o.createElement)("div",{className:"bb-admin-settings-field__image-radio-icon bb-admin-settings-field__image-radio-icon--buddyboss"},(0,o.createElement)("img",{src:ce,alt:""}))},"cover-none":function(){return(0,o.createElement)("div",{className:"bb-admin-settings-field__image-radio-icon bb-admin-settings-field__image-radio-icon--none"},(0,o.createElement)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 48 48",fill:"none"},(0,o.createElement)("path",{d:"M39.0918 35.908C39.5145 36.3307 39.7519 36.9039 39.7519 37.5017C39.7519 38.0995 39.5145 38.6728 39.0918 39.0955C38.6691 39.5182 38.0958 39.7556 37.498 39.7556C36.9003 39.7556 36.327 39.5182 35.9043 39.0955L23.9999 27.1873L12.0918 39.0917C11.6691 39.5144 11.0958 39.7519 10.498 39.7519C9.90027 39.7519 9.32698 39.5144 8.90429 39.0917C8.4816 38.669 8.24414 38.0957 8.24414 37.498C8.24414 36.9002 8.48161 36.3269 8.90429 35.9042L20.8124 23.9998L8.90804 12.0917C8.48535 11.669 8.24789 11.0957 8.24789 10.498C8.24789 9.90019 8.48535 9.3269 8.90804 8.90422C9.33073 8.48153 9.90402 8.24406 10.5018 8.24406C11.0996 8.24406 11.6729 8.48153 12.0955 8.90422L23.9999 20.8123L35.908 8.90234C36.3307 8.47965 36.904 8.24219 37.5018 8.24219C38.0996 8.24219 38.6729 8.47965 39.0955 8.90234C39.5182 9.32503 39.7557 9.89832 39.7557 10.4961C39.7557 11.0939 39.5182 11.6672 39.0955 12.0898L27.1874 23.9998L39.0918 35.908Z",fill:"#999999"})))},"cover-custom":function(){return(0,o.createElement)("div",{className:"bb-admin-settings-field__image-radio-icon bb-admin-settings-field__image-radio-icon--custom"},(0,o.createElement)("span",{className:"bb-icons-rl-gear-six"}))},"avatar-buddyboss":function(){return(0,o.createElement)("div",{className:"bb-admin-settings-field__image-radio-icon bb-admin-settings-field__image-radio-icon--avatar-group"},(0,o.createElement)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 48 48",fill:"none","aria-hidden":"true"},(0,o.createElement)("path",{d:"M24 26C29.5228 26 34 21.5228 34 16C34 10.4772 29.5228 6 24 6C18.4772 6 14 10.4772 14 16C14 21.5228 18.4772 26 24 26ZM24 30C13.954 30 4 34.5294 4 41V44H44V41C44 34.5294 34.046 30 24 30Z",fill:"#999999"})))},"avatar-name":function(){return(0,o.createElement)("div",{className:"bb-admin-settings-field__image-radio-icon bb-admin-settings-field__image-radio-icon--avatar-name"},(0,o.createElement)("span",{className:"bb-admin-settings-field__avatar-initials"},"BB"))},"avatar-custom":function(){return(0,o.createElement)("div",{className:"bb-admin-settings-field__image-radio-icon bb-admin-settings-field__image-radio-icon--custom"},(0,o.createElement)("span",{className:"bb-icons-rl-gear-six"}))},"header-left-group":function(){return(0,o.createElement)(de,{alignment:"left"})},"header-centered-group":function(){return(0,o.createElement)(de,{alignment:"centered"})},"header-left-profile":function(){return(0,o.createElement)(de,{alignment:"left"})},"header-centered-profile":function(){return(0,o.createElement)(de,{alignment:"centered"})},"notification-position-left":function(){return(0,o.createElement)(ue,{position:"left"})},"notification-position-right":function(){return(0,o.createElement)(ue,{position:"right"})}};function pe({field:e,value:t,onChange:n,disabled:a,descriptionHtml:r}){var[i,l]=(0,s.useState)(t),c=void 0!==be[e.name]?be[e.name]:e.upload_url||"",[d,u]=(0,s.useState)(c);(0,s.useEffect)((function(){l(t)}),[t]);var b=e.upload_config&&e.upload_config.conditional,m=b&&i===b.value;return(0,o.createElement)("div",{className:"bb-admin-settings-field__image-radio-wrapper"+(e.name?" bb-admin-settings-field__image-radio-wrapper--"+e.name:"")},(0,o.createElement)("div",{className:"bb-admin-settings-field__image-radio"},(e.options||[]).map((function(t){return(0,o.createElement)("button",{key:t.value,type:"button",className:"bb-admin-settings-field__image-radio-option"+(i===t.value?" bb-admin-settings-field__image-radio-option--selected":""),onClick:function(){var a;a=t.value,l(a),n(e.name,a)},disabled:a},(0,o.createElement)("div",{className:"bb-admin-settings-field__image-radio-preview"},me[t.image]?me[t.image]():!t.image||0!==t.image.indexOf("http")&&0!==t.image.indexOf("/")?null:(0,o.createElement)("img",{src:t.image,alt:t.label||"",className:"bb-admin-settings-field__image-radio-img"})),(0,o.createElement)("span",{className:"bb-admin-settings-field__image-radio-label"},t.label))}))),r&&(0,o.createElement)("p",{className:"bb-admin-settings-form__field-description bb-admin-settings-form__field-description--image-radio"+(m?" bb-admin-settings-field__image-radio--with-divider":""),dangerouslySetInnerHTML:{__html:r}}),m&&(0,o.createElement)(le,{uploadConfig:e.upload_config,uploadUrl:d,onUpload:function(t){be[e.name]=t,u(t)},onRemove:function(){be[e.name]="",u("")},disabled:a}))}function fe({field:e,values:t,onChange:n}){var a=e.fields||[];return(0,o.createElement)("div",{className:"bb-admin-settings-field__dimensions"},a.map(((e,r)=>{var i=void 0!==t[e.name]?t[e.name]:e.default;return(0,o.createElement)("div",{key:e.name,className:"bb-admin-settings-field__dimension-item"},(0,o.createElement)("label",{className:"bb-admin-settings-field__dimension-label"},e.label),(0,o.createElement)("div",{className:"bb-admin-settings-field__dimension-input-wrap"},(0,o.createElement)("input",{type:"number",value:i||"",onChange:t=>n(e.name,t.target.value),min:e.min,max:e.max,className:"bb-admin-settings-field__dimension-input"}),e.suffix&&(0,o.createElement)("span",{className:"bb-admin-settings-field__dimension-suffix"},e.suffix)),r=a&&(a=n+1)}}));var r="bb_vid_"+a,i=m.trim(),o=f.trim();if(o){var s={};Object.keys(h).forEach((function(e){var t=h[e];s[e]={extension:t.extension,mime_type:t.mime_type,description:t.description,is_default:t.is_default,is_active:void 0!==k[e]?k[e]:t.is_active,icon:t.icon||""}})),s[r]={extension:t,mime_type:o,description:i,is_default:0,is_active:1,icon:""},E(s);var c={label:i?t+" ("+i+")":t,value:r,is_default:0};N((function(e){return e.concat([c])})),n(e.name,s),S()}else v((0,l.__)("MIME type is required.","buddyboss"))}},disabled:!u.trim()||!f.trim()},(0,l.__)("Save","buddyboss")))))}const Ee={};var we=!(!window.bbAdminData||!window.bbAdminData.isReadyLaunch);function Ne(){return we?"bb-icons-rl bb-icons-rl-file":"bb-icon-l bb-icon-file"}function Ce(e){var t=(e||"").replace(".","").toLowerCase();return we?"bb-icons-rl "+({pdf:"bb-icons-rl-file-pdf",doc:"bb-icons-rl-file-doc",docx:"bb-icons-rl-file-doc",xls:"bb-icons-rl-file-xls",xlsx:"bb-icons-rl-file-xls",ppt:"bb-icons-rl-file-ppt",pptx:"bb-icons-rl-file-ppt",csv:"bb-icons-rl-file-csv",css:"bb-icons-rl-file-css",html:"bb-icons-rl-file-html",htm:"bb-icons-rl-file-html",jpg:"bb-icons-rl-file-jpg",jpeg:"bb-icons-rl-file-jpg",png:"bb-icons-rl-file-png",gif:"bb-icons-rl-file-image",svg:"bb-icons-rl-file-svg",zip:"bb-icons-rl-file-archive",rar:"bb-icons-rl-file-archive",gz:"bb-icons-rl-file-archive",tar:"bb-icons-rl-file-archive","7z":"bb-icons-rl-file-archive",mp3:"bb-icons-rl-file-audio",wav:"bb-icons-rl-file-audio",mp4:"bb-icons-rl-file-video",avi:"bb-icons-rl-file-video",txt:"bb-icons-rl-file-text",js:"bb-icons-rl-file-code",json:"bb-icons-rl-file-code",xml:"bb-icons-rl-file-code",php:"bb-icons-rl-file-code",py:"bb-icons-rl-file-code",cpp:"bb-icons-rl-file-cpp",c:"bb-icons-rl-file-c"}[t]||"bb-icons-rl-file"):"bb-icon-l "+({pdf:"bb-icon-file-pdf",doc:"bb-icon-file-doc",docx:"bb-icon-file-docx",xls:"bb-icon-file-xlsx",xlsx:"bb-icon-file-xlsx",ppt:"bb-icon-file-pptx",pptx:"bb-icon-file-pptx",csv:"bb-icon-file-csv",css:"bb-icon-file-css",html:"bb-icon-file-html",htm:"bb-icon-file-html",jpg:"bb-icon-file-png",jpeg:"bb-icon-file-png",png:"bb-icon-file-png",gif:"bb-icon-file-image",svg:"bb-icon-file-svg",zip:"bb-icon-file-zip",rar:"bb-icon-file-zip",gz:"bb-icon-file-zip",tar:"bb-icon-file-tar","7z":"bb-icon-file-zip",mp3:"bb-icon-file-mp3",wav:"bb-icon-file-audio",mp4:"bb-icon-file-video",avi:"bb-icon-file-video",txt:"bb-icon-file-txt",js:"bb-icon-file-code",json:"bb-icon-file-code",xml:"bb-icon-file-code",php:"bb-icon-file-code",py:"bb-icon-file-code",cpp:"bb-icon-file-code",c:"bb-icon-file-code"}[t]||"bb-icon-file")}function xe({field:e,value:t,onChange:n,disabled:a}){var r={};"object"==typeof t&&null!==t&&Object.keys(t).forEach((function(e){var n=t[e];"object"==typeof n&&null!==n&&void 0!==n.is_active?r[e]=n.is_active?1:0:r[e]=n?1:0}));var[i,d]=(0,s.useState)(!1),[u,b]=(0,s.useState)((function(){return e.name&&Ee[e.name]?Ee[e.name]:e.extension_data||{}})),m=(0,s.useRef)(null);(0,s.useEffect)((function(){if(e.extension_data){var t=JSON.stringify(e.extension_data);if(m.current!==t){if(m.current=t,e.name&&Ee[e.name]&&JSON.stringify(Ee[e.name])!==t)return;b(e.extension_data)}}}),[e.extension_data]),(0,s.useEffect)((function(){e.name&&(Ee[e.name]=u)}),[e.name,u]);var[p,f]=(0,s.useState)((function(){return Object.assign({},r)})),[_,g]=(0,s.useState)(!1),[v,y]=(0,s.useState)(""),[h,E]=(0,s.useState)(""),[w,N]=(0,s.useState)(""),[C,x]=(0,s.useState)("bb-icon-file"),[k,S]=(0,s.useState)(""),[A,D]=(0,s.useState)(!1),[I,O]=(0,s.useState)(null),[R,P]=(0,s.useState)(""),[M,B]=(0,s.useState)(""),[T,L]=(0,s.useState)(""),[j,F]=(0,s.useState)("bb-icon-file"),U=e.icon_options||[],[H,G]=(0,s.useState)(!1),[z,V]=(0,s.useState)(!1),W=(0,s.useRef)(null),$=(0,s.useRef)(null),q=_e(),[Y,J]=(0,s.useState)(!1);(0,s.useEffect)((function(){if(_||A)return document.addEventListener("keydown",e,!0),function(){document.removeEventListener("keydown",e,!0)};function e(e){"Escape"===e.key&&(e.stopPropagation(),e.preventDefault(),_?g(!1):A&&(D(!1),O(null)))}}),[_,A]),(0,s.useEffect)((function(){function e(e){W.current&&!W.current.contains(e.target)&&G(!1),$.current&&!$.current.contains(e.target)&&V(!1)}return document.addEventListener("mousedown",e),function(){document.removeEventListener("mousedown",e)}}),[]);var Z=function(){d(!1),J(!1)},K=function(){y(""),E(""),N(""),x("bb-icon-file"),S(""),G(!1),q.resetMimeState(),g(!1)},X=function(){D(!1),O(null),P(""),B(""),L(""),F("bb-icon-file"),V(!1)},Q=Object.keys(u),ee=[],te=[];Q.forEach((function(e){var t=u[e],n={key:e,extension:t.extension,description:t.description,mime_type:t.mime_type||"",is_default:t.is_default,icon:t.icon};t.is_default?ee.push(n):te.push(n)}));var ne=ee.concat(te);return(0,o.createElement)("div",{className:"bb-doc-extensions"},(0,o.createElement)("button",{type:"button",className:"bb-admin-settings-field__manage-btn",onClick:function(){f(Object.assign({},r)),J(!1),d(!0)},disabled:a},e.manage_icon&&(0,o.createElement)("i",{className:e.manage_icon}),(0,o.createElement)("span",null,e.manage_label||(0,l.__)("Manage","buddyboss"))),i&&(0,o.createElement)(c.Modal,{title:(0,l.__)("Manage File Extensions","buddyboss"),onRequestClose:Z,className:"bb-doc-extensions-modal bb-admin-settings-modal",overlayClassName:"bb-extension-modal-overlay",shouldCloseOnClickOutside:!1},(0,o.createElement)("div",{className:"bb-doc-extensions-modal__body"},(0,o.createElement)("div",{className:"bb-doc-extensions-modal__list"},ne.map((function(t){var a=t.key,r=1===p[a]||void 0===p[a]&&u[a]&&u[a].is_active,i=1===t.is_default;return(0,o.createElement)("div",{key:a,className:"bb-doc-extensions-modal__item"+(r?"":" bb-doc-extensions-modal__item--disabled")},(0,o.createElement)("div",{className:"bb-doc-extensions-modal__checkbox"},(0,o.createElement)(c.CheckboxControl,{checked:r,onChange:function(e){!function(e,t){f((function(n){var a=Object.assign({},n);return a[e]=t?1:0,a})),J(!0)}(a,e)}})),(0,o.createElement)("span",{className:"bb-doc-extensions-modal__ext-name"},t.extension),(0,o.createElement)("i",{className:"bb-doc-extensions-modal__ext-icon "+Ce(t.extension)}),(0,o.createElement)("span",{className:"bb-doc-extensions-modal__ext-desc"},t.description,t.mime_type&&(0,o.createElement)("span",{className:"bb-doc-extensions-modal__ext-mime"}," ("+t.mime_type+")")),!i&&(0,o.createElement)("div",{className:"bb-doc-extensions-modal__ext-actions"},(0,o.createElement)(c.DropdownMenu,{icon:(0,o.createElement)("i",{className:"bb-icons-rl-dots-three"}),label:(0,l.__)("More options","buddyboss")},(function(t){var r=t.onClose;return(0,o.createElement)(c.MenuGroup,{className:"bb_dropdown_menu_group"},(0,o.createElement)(c.MenuItem,{onClick:function(){!function(e){var t=u[e];if(t){var n=t.icon||"";if(!n&&t.extension&&U.length>0){var a=Ce(t.extension),r=U.find((function(e){return e.icon_class===a}));r&&(n=r.value)}O(e),P(t.extension||""),B(t.description||""),L(t.mime_type||""),F(n||"bb-icon-file"),D(!0)}}(a),r()}},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-note-pencil"}),(0,l.__)("Edit","buddyboss")),(0,o.createElement)(c.MenuItem,{isDestructive:!0,onClick:function(){!function(t){var a={};Object.keys(u).forEach((function(e){if(e!==t){var n=u[e];a[e]={extension:n.extension,mime_type:n.mime_type,description:n.description,is_default:n.is_default,is_active:void 0!==p[e]?p[e]:n.is_active,icon:n.icon||""}}})),b(a),f((function(e){var n=Object.assign({},e);return delete n[t],n})),n(e.name,a),J(!0)}(a),r()}},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-trash"}),(0,l.__)("Delete","buddyboss")))}))))}))),(0,o.createElement)("div",{className:"bb-doc-extensions-modal__add-btn-wrap"},(0,o.createElement)("button",{type:"button",className:"bb-doc-extensions-modal__add-btn",onClick:function(){g(!0)},disabled:a},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-plus"}),(0,o.createElement)("span",null,(0,l.__)("Add Extension","buddyboss"))))),(0,o.createElement)("div",{className:"bb-admin-settings-modal__footer"},(0,o.createElement)(c.Button,{variant:"secondary",onClick:Z},(0,l.__)("Cancel","buddyboss")),(0,o.createElement)(c.Button,{variant:"primary",onClick:function(){n(e.name,p),d(!1),J(!1)}},(0,l.__)("Save","buddyboss")))),i&&_&&(0,s.createPortal)((0,o.createElement)("div",{className:"bb-extension-modal-overlay bb-extension-modal-overlay--nested"},(0,o.createElement)("div",{className:"bb-extension-modal--nested",role:"dialog","aria-modal":"true","aria-label":(0,l.__)("Add New Extension","buddyboss")},(0,o.createElement)("div",{className:"bb-extension-modal--nested__header"},(0,o.createElement)("h1",null,(0,l.__)("Add New Extension","buddyboss")),(0,o.createElement)("button",{type:"button",className:"bb-extension-modal--nested__close",onClick:K,"aria-label":(0,l.__)("Close","buddyboss")},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-x"}))),(0,o.createElement)("div",{className:"bb-extension-modal__body"},k&&(0,o.createElement)("div",{className:"bb-extension-modal__error"},k),(0,o.createElement)("div",{className:"bb-extension-modal__field"},(0,o.createElement)("label",{className:"bb-extension-modal__label"},(0,l.__)("Extension","buddyboss")),(0,o.createElement)(c.TextControl,{value:v,onChange:function(e){y(e),S("")},placeholder:(0,l.__)("Enter an extension (e.g., .extension)","buddyboss"),__nextHasNoMarginBottom:!0})),(0,o.createElement)("div",{className:"bb-extension-modal__field"},(0,o.createElement)("label",{className:"bb-extension-modal__label"},(0,l.__)("Description","buddyboss")),(0,o.createElement)(c.TextareaControl,{value:h,onChange:E,placeholder:(0,l.__)("Enter a short description","buddyboss"),__nextHasNoMarginBottom:!0})),(0,o.createElement)("div",{className:"bb-extension-modal__field"},(0,o.createElement)("label",{className:"bb-extension-modal__label"},(0,l.__)("Icon","buddyboss")),(0,o.createElement)("div",{className:"bb-extension-modal__icon-select",ref:W},(0,o.createElement)("div",{className:"bb-extension-modal__icon-dropdown"+(H?" is-open":""),onClick:function(){G(!H)},role:"button",tabIndex:0,onKeyDown:function(e){"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),G(!H))}},(0,o.createElement)("i",{className:(U.find((function(e){return e.value===C}))||{}).icon_class||Ne()}),(0,o.createElement)("span",{className:"bb-extension-modal__icon-dropdown-label"},(U.find((function(e){return e.value===C}))||{}).label||(0,l.__)("Default","buddyboss")),(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-caret-down bb-extension-modal__icon-dropdown-chevron"})),H&&(0,o.createElement)("div",{className:"bb-extension-modal__icon-dropdown-list"},U.map((function(e){return(0,o.createElement)("div",{key:e.value,className:"bb-extension-modal__icon-dropdown-item"+(e.value===C?" is-selected":""),onClick:function(){x(e.value),G(!1)}},(0,o.createElement)("i",{className:e.icon_class}),(0,o.createElement)("span",null,e.label))}))))),(0,o.createElement)("div",{className:"bb-extension-modal__field"},(0,o.createElement)("label",{className:"bb-extension-modal__label"},(0,l.__)("MIME Type","buddyboss")),(0,o.createElement)("div",{className:"bb-extension-modal__mime-row"},(0,o.createElement)(c.TextControl,{value:w,onChange:function(e){N(e),S("")},placeholder:(0,l.__)("Enter MIME type","buddyboss"),__nextHasNoMarginBottom:!0}),(0,o.createElement)(c.Button,{variant:"tertiary",className:"bb-extension-modal__mime-checker-toggle",onClick:function(){q.setIsMimeCheckerOpen(!q.isMimeCheckerOpen),q.setMimeCheckerResult("")}},(0,l.__)("MIME Checker","buddyboss"))),!q.isMimeCheckerOpen&&!w.trim()&&(0,o.createElement)("p",{className:"bb-extension-modal__field-hint"},(0,l.__)('Not sure? Click "MIME Checker" to detect the correct type from a sample file.',"buddyboss"))),q.isMimeCheckerOpen&&(0,o.createElement)(ge,{mimeChecker:q,onUseMimeType:function(){A?L(q.mimeCheckerResult):N(q.mimeCheckerResult),q.handleCloseMimeChecker()}})),(0,o.createElement)("div",{className:"bb-admin-settings-modal__footer bb-extension-modal__footer"},(0,o.createElement)(c.Button,{variant:"secondary",onClick:K},(0,l.__)("Cancel","buddyboss")),(0,o.createElement)(c.Button,{variant:"primary",onClick:function(){var t=v.trim();if(t)if("."!==t.charAt(0)&&(t="."+t),Object.keys(u).some((function(e){return u[e].extension&&u[e].extension.toLowerCase()===t.toLowerCase()})))S((0,l.__)("This extension already exists.","buddyboss"));else{var a=0;Object.keys(u).forEach((function(e){var t=e.match(/bb_doc_(\d+)/);if(t){var n=parseInt(t[1],10);n>=a&&(a=n+1)}}));var r="bb_doc_"+a,i=h.trim(),o=w.trim();if(o){var s={};Object.keys(u).forEach((function(e){var t=u[e];s[e]={extension:t.extension,mime_type:t.mime_type,description:t.description,is_default:t.is_default,is_active:void 0!==p[e]?p[e]:t.is_active,icon:t.icon||""}})),s[r]={extension:t,mime_type:o,description:i,is_default:0,is_active:1,icon:C||"bb-icon-file"},b(s),f((function(e){var t=Object.assign({},e);return t[r]=1,t})),n(e.name,s),J(!0),K()}else S((0,l.__)("MIME type is required.","buddyboss"))}},disabled:!v.trim()||!w.trim()},(0,l.__)("Save","buddyboss"))))),document.body),i&&A&&I&&(0,s.createPortal)((0,o.createElement)("div",{className:"bb-extension-modal-overlay bb-extension-modal-overlay--nested"},(0,o.createElement)("div",{className:"bb-extension-modal--nested",role:"dialog","aria-modal":"true","aria-label":(0,l.__)("Edit Extension","buddyboss")},(0,o.createElement)("div",{className:"bb-extension-modal--nested__header"},(0,o.createElement)("h1",null,(0,l.__)("Edit Extension","buddyboss")),(0,o.createElement)("button",{type:"button",className:"bb-extension-modal--nested__close",onClick:X,"aria-label":(0,l.__)("Close","buddyboss")},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-x"}))),(0,o.createElement)("div",{className:"bb-extension-modal__body"},(0,o.createElement)("div",{className:"bb-extension-modal__field"},(0,o.createElement)("label",{className:"bb-extension-modal__label"},(0,l.__)("Extension","buddyboss")),(0,o.createElement)(c.TextControl,{value:R,onChange:P,__nextHasNoMarginBottom:!0})),(0,o.createElement)("div",{className:"bb-extension-modal__field"},(0,o.createElement)("label",{className:"bb-extension-modal__label"},(0,l.__)("Description","buddyboss")),(0,o.createElement)(c.TextControl,{value:M,onChange:B,__nextHasNoMarginBottom:!0})),(0,o.createElement)("div",{className:"bb-extension-modal__field"},(0,o.createElement)("label",{className:"bb-extension-modal__label"},(0,l.__)("Icon","buddyboss")),(0,o.createElement)("div",{className:"bb-extension-modal__icon-select",ref:$},(0,o.createElement)("div",{className:"bb-extension-modal__icon-dropdown"+(z?" is-open":""),onClick:function(){V(!z)},role:"button",tabIndex:0,onKeyDown:function(e){"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),V(!z))}},(0,o.createElement)("i",{className:(U.find((function(e){return e.value===j}))||{}).icon_class||Ne()}),(0,o.createElement)("span",{className:"bb-extension-modal__icon-dropdown-label"},(U.find((function(e){return e.value===j}))||{}).label||(0,l.__)("Default","buddyboss")),(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-caret-down bb-extension-modal__icon-dropdown-chevron"})),z&&(0,o.createElement)("div",{className:"bb-extension-modal__icon-dropdown-list"},U.map((function(e){return(0,o.createElement)("div",{key:e.value,className:"bb-extension-modal__icon-dropdown-item"+(e.value===j?" is-selected":""),onClick:function(){F(e.value),V(!1)}},(0,o.createElement)("i",{className:e.icon_class}),(0,o.createElement)("span",null,e.label))}))))),(0,o.createElement)("div",{className:"bb-extension-modal__field"},(0,o.createElement)("label",{className:"bb-extension-modal__label"},(0,l.__)("MIME Type","buddyboss")),(0,o.createElement)("div",{className:"bb-extension-modal__mime-row"},(0,o.createElement)(c.TextControl,{value:T,onChange:L,placeholder:(0,l.__)("Enter MIME type","buddyboss"),__nextHasNoMarginBottom:!0}),(0,o.createElement)(c.Button,{variant:"tertiary",className:"bb-extension-modal__mime-checker-toggle",onClick:function(){q.setIsMimeCheckerOpen(!q.isMimeCheckerOpen),q.setMimeCheckerResult("")}},(0,l.__)("MIME Checker","buddyboss"))),!q.isMimeCheckerOpen&&!T.trim()&&(0,o.createElement)("p",{className:"bb-extension-modal__field-hint"},(0,l.__)('Not sure? Click "MIME Checker" to detect the correct type from a sample file.',"buddyboss"))),q.isMimeCheckerOpen&&(0,o.createElement)(ge,{mimeChecker:q,onUseMimeType:function(){L(q.mimeCheckerResult),q.handleCloseMimeChecker()}})),(0,o.createElement)("div",{className:"bb-admin-settings-modal__footer bb-extension-modal__footer"},(0,o.createElement)(c.Button,{variant:"secondary",onClick:X},(0,l.__)("Cancel","buddyboss")),(0,o.createElement)(c.Button,{variant:"primary",onClick:function(){if(I){var t=R.trim();if(t){"."!==t.charAt(0)&&(t="."+t);var a={};Object.keys(u).forEach((function(e){var n=u[e];a[e]=e===I?{extension:t,mime_type:T.trim()||n.mime_type,description:M.trim(),is_default:n.is_default,is_active:void 0!==p[e]?p[e]:n.is_active,icon:j||"bb-icon-file"}:{extension:n.extension,mime_type:n.mime_type,description:n.description,is_default:n.is_default,is_active:void 0!==p[e]?p[e]:n.is_active,icon:n.icon||""}})),b(a),n(e.name,a),J(!0),D(!1),O(null),P(""),B(""),L(""),F("bb-icon-file"),V(!1)}}},disabled:!R.trim()||!T.trim()},(0,l.__)("Save","buddyboss"))))),document.body))}function ke(e){var t=e.field,n=e.value,a=e.onChange,r=e.disabled,i=e.values,c=t.is_connected||!1,d=t.button_label||(0,l.__)("Connect","buddyboss"),u=t.button_only||!1,b=!!t.icon_only,m=t.icon||"",f=t.icon_label||t.button_label||(0,l.__)("Action","buddyboss"),_=(0,s.useRef)(null),g=(0,s.useRef)(null),v=(0,s.useState)(n||""),y=v[0],h=v[1],N=(0,s.useState)(d),C=N[0],x=N[1],k=(0,s.useState)(c),S=k[0],A=k[1],D=(0,s.useState)(!1),I=D[0],O=D[1],R=(0,s.useState)(""),P=R[0],M=R[1],B=(0,s.useState)(""),T=B[0],L=B[1];function j(){if(!I){g.current&&g.current.abort();var e=new AbortController;g.current=e,O(!0),M(""),L("");var n=t.ajax_action||"bb_media_giphy_connect",r=new FormData;r.append("action",n),r.append("nonce",window.bbAdminData.ajaxNonce),u&&Array.isArray(t.related_fields)&&i?t.related_fields.forEach((function(e){r.append(e,S?"":i[e]||"")})):(r.append("connect_action",S?"disconnect":"connect"),r.append("api_key",y)),fetch(window.bbAdminData.ajaxUrl,{method:"POST",credentials:"same-origin",body:r,signal:e.signal}).then((function(e){if(!e.ok)throw new Error(e.statusText||"Request failed");return e.json()})).then((function(e){if(O(!1),e.success){var n=e.data;if(A(n.is_connected),n.button_label&&x(n.button_label),p(),!n.is_connected&&S&&(u&&Array.isArray(t.related_fields)?t.related_fields.forEach((function(e){a(e,"")})):u||(h(""),a(t.name,""))),n.status){var r=new CustomEvent(E,{detail:{fieldName:t.name,status:n.status}});window.dispatchEvent(r)}if(n.updated_fields||n.field_options){var i=new CustomEvent(w,{detail:{fields:n.updated_fields||{},field_options:n.field_options||null,is_connected:n.is_connected}});window.dispatchEvent(i)}n.message&&n.has_warning&&L(n.message)}else M(e.data&&e.data.message||(0,l.__)("Connection failed.","buddyboss"))})).catch((function(e){e&&"AbortError"===e.name||(O(!1),M((0,l.__)("Connection failed. Please try again.","buddyboss")))}))}}(0,s.useEffect)((function(){h(n||"")}),[n]),(0,s.useEffect)((function(){A(t.is_connected||!1),x(t.button_label||(0,l.__)("Connect","buddyboss"))}),[t.is_connected,t.button_label]),(0,s.useEffect)((function(){return function(){g.current&&g.current.abort()}}),[]);var F=r||I;return u||S||y||(F=!0),(0,o.createElement)("div",{className:"bb-admin-settings-field__input-button"},(0,o.createElement)("div",{className:"bb-admin-settings-field__input-button-row"},!u&&(0,o.createElement)("div",{className:"bb-admin-settings-field__input-button-input"},(0,o.createElement)("input",{ref:_,type:"text",value:y,placeholder:t.placeholder||"",onChange:function(e){h(e.target.value),M(""),L("")},disabled:r||S,className:"bb-admin-settings-field__input-button-text"})),b?(0,o.createElement)("button",{type:"button",className:"bb-admin-settings-field__input-button-btn bb-admin-settings-field__input-button-btn--icon-only"+(I?" is-loading":""),onClick:j,disabled:F,"aria-label":f,title:f},(0,o.createElement)("i",{className:"bb-admin-settings-field__input-button-icon "+m+(I?" is-spinning":""),"aria-hidden":"true"})):(0,o.createElement)("button",{type:"button",className:"bb-admin-settings-field__input-button-btn"+(S?" bb-admin-settings-field__input-button-btn--connected":""),onClick:j,disabled:F},I?(0,l.__)("Saving...","buddyboss"):C)),P&&(0,o.createElement)("p",{className:"bb-admin-settings-field__input-button-error",role:"alert"},P),T&&(0,o.createElement)("p",{className:"bb-admin-settings-field__input-button-warning",role:"alert"},T))}var Se=[{value:"",label:(0,l.__)("Select Condition","buddyboss")},{value:"always_allow",label:(0,l.__)("Always Allow","buddyboss")},{value:"never_allow",label:(0,l.__)("Never Allow","buddyboss")},{value:"only_allow",label:(0,l.__)("Only Allow","buddyboss")}];function Ae({field:e,value:t,onChange:n,disabled:a}){var r=(0,s.useRef)(0),i=(0,s.useRef)(null),d=(0,s.useRef)(null);function u(e){return e._key?e:Object.assign({},e,{_key:"dr-"+ ++r.current})}function b(e,t){i.current&&clearTimeout(i.current),i.current=setTimeout((function(){d.current=t,n(e,t)}),800)}var m=Array.isArray(t)&&t.length>0?t.map(u):[],[p,f]=(0,s.useState)(m),_=(0,s.useRef)(null),g=(0,s.useRef)(null),[v,y]=(0,s.useState)(null);(0,s.useEffect)((function(){Array.isArray(t)&&(d.current&&d.current===t||null===d.current&&f(t.map(u)))}),[t]),(0,s.useEffect)((function(){return function(){i.current&&clearTimeout(i.current)}}),[]);var h=p.some((function(e){return"always_allow"===e.condition})),E=p.some((function(e){return"only_allow"===e.condition}));function w(t,n,a){var r=p.map((function(e,r){if(r!==t)return e;var i=Object.assign({},e);return i[n]=a,i}));f(r),b(e.name,r)}var N=(0,s.useCallback)((function(e){_.current=e}),[]),C=(0,s.useCallback)((function(e,t){e.preventDefault(),g.current=t,y(t)}),[]),x=(0,s.useCallback)((function(){var t=_.current,a=g.current;if(_.current=null,g.current=null,y(null),null!==t&&null!==a&&t!==a){var r=p.slice(),i=r.splice(t,1)[0];r.splice(a,0,i),f(r),n(e.name,r)}}),[p,e.name,n]),k=(0,s.useCallback)((function(){_.current=null,g.current=null,y(null)}),[]);return(0,o.createElement)("div",{className:"bb-domain-restrictions"},(0,o.createElement)("div",{className:"bb-domain-restrictions__rows"},p.map((function(t,n){return(0,o.createElement)("div",{key:t._key,className:"bb-domain-restrictions__row"+(v===n&&_.current!==n?" bb-domain-restrictions__row--drag-over":""),draggable:!a,onDragStart:function(){N(n)},onDragOver:function(e){C(e,n)},onDrop:x,onDragEnd:k},(0,o.createElement)("span",{className:"bb-domain-restrictions__drag-handle"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-list"})),(0,o.createElement)("div",{className:"bb-domain-restrictions__domain"},(0,o.createElement)(c.TextControl,{value:t.domain||"",onChange:function(e){w(n,"domain",e)},placeholder:(0,l.__)("Domain name","buddyboss"),disabled:a,__nextHasNoMarginBottom:!0})),(0,o.createElement)("span",{className:"bb-domain-restrictions__dot"}),(0,o.createElement)("div",{className:"bb-domain-restrictions__tld"},(0,o.createElement)(c.TextControl,{value:t.tld||"",onChange:function(e){w(n,"tld",e)},placeholder:(0,l.__)("Extension","buddyboss"),disabled:a,__nextHasNoMarginBottom:!0})),(0,o.createElement)("div",{className:"bb-domain-restrictions__condition"},(0,o.createElement)(c.SelectControl,{value:t.condition||"",options:(r=t.condition,Se.map((function(e){var t=!1;return"always_allow"===e.value&&E&&"always_allow"!==r&&(t=!0),"only_allow"===e.value&&h&&"only_allow"!==r&&(t=!0),{value:e.value,label:e.label,disabled:t}}))),onChange:function(e){w(n,"condition",e)},disabled:a,__nextHasNoMarginBottom:!0})),(0,o.createElement)("button",{type:"button",className:"bb-domain-restrictions__remove",onClick:function(){!function(t){var n=p.filter((function(e,n){return n!==t}));f(n),b(e.name,n)}(n)},disabled:a,"aria-label":(0,l.__)("Remove Rule","buddyboss")},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-x"})));var r}))),(0,o.createElement)(c.Button,{variant:"secondary",className:"bb-domain-restrictions__add",onClick:function(){var e=p.concat([u({domain:"",tld:"",condition:""})]);f(e)},disabled:a},(0,o.createElement)("i",{className:"bb-icons-rl-plus"}),(0,l.__)("Add Domain","buddyboss")))}var De=[{value:"",label:(0,l.__)("Select Condition","buddyboss")},{value:"always_allow",label:(0,l.__)("Always Allow","buddyboss")},{value:"never_allow",label:(0,l.__)("Never Allow","buddyboss")}];function Ie({field:e,value:t,onChange:n,disabled:a}){var r=(0,s.useRef)(0),i=(0,s.useRef)(null),d=(0,s.useRef)(null);function u(e){return e._key?e:Object.assign({},e,{_key:"er-"+ ++r.current})}function b(e,t){i.current&&clearTimeout(i.current),i.current=setTimeout((function(){d.current=t,n(e,t)}),800)}var m=Array.isArray(t)&&t.length>0?t.map(u):[],[p,f]=(0,s.useState)(m);function _(t,n,a){var r=p.map((function(e,r){if(r!==t)return e;var i=Object.assign({},e);return i[n]=a,i}));f(r),b(e.name,r)}return(0,s.useEffect)((function(){Array.isArray(t)&&(d.current&&d.current===t||null===d.current&&f(t.map(u)))}),[t]),(0,s.useEffect)((function(){return function(){i.current&&clearTimeout(i.current)}}),[]),(0,o.createElement)("div",{className:"bb-email-restrictions"},(0,o.createElement)("div",{className:"bb-email-restrictions__rows"},p.map((function(t,n){return(0,o.createElement)("div",{key:t._key,className:"bb-email-restrictions__row"},(0,o.createElement)("div",{className:"bb-email-restrictions__address"},(0,o.createElement)(c.TextControl,{type:"email",value:t.address||"",onChange:function(e){_(n,"address",e)},placeholder:(0,l.__)("Email address","buddyboss"),disabled:a,__nextHasNoMarginBottom:!0})),(0,o.createElement)("div",{className:"bb-email-restrictions__condition"},(0,o.createElement)(c.SelectControl,{value:t.condition||"",options:De,onChange:function(e){_(n,"condition",e)},disabled:a,__nextHasNoMarginBottom:!0})),(0,o.createElement)("button",{type:"button",className:"bb-email-restrictions__remove",onClick:function(){!function(t){var n=p.filter((function(e,n){return n!==t}));f(n),b(e.name,n)}(n)},disabled:a,"aria-label":(0,l.__)("Remove Rule","buddyboss")},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-x"})))}))),(0,o.createElement)(c.Button,{variant:"secondary",className:"bb-email-restrictions__add",onClick:function(){var e=p.concat([u({address:"",condition:""})]);f(e)},disabled:a},(0,o.createElement)("i",{className:"bb-icons-rl-plus"}),(0,l.__)("Add Email","buddyboss")))}function Oe(e){var t=e.field,n=e.value,a=e.onChange,r=e.disabled,i=(0,s.useState)(!1),c=i[0],d=i[1];return(0,o.createElement)("div",{className:"bb-admin-settings-field__password"},(0,o.createElement)("input",{type:c?"text":"password",name:t.name,id:"bb-field-"+t.name,autoComplete:"off",value:n||"",placeholder:t.placeholder||"","aria-label":t.label||t.name,onChange:function(e){a(t.name,e.target.value)},disabled:r,className:"bb-admin-settings-field__password-input"}),(0,o.createElement)("button",{type:"button",className:"bb-admin-settings-field__password-toggle"+(c?" bb-admin-settings-field__password-toggle--visible":""),onClick:function(){d(!c)},"aria-label":c?(0,l.__)("Hide value","buddyboss"):(0,l.__)("Show value","buddyboss"),tabIndex:0,disabled:r},c?(0,o.createElement)("i",{className:"bb-icons-rl-eye-slash"}):(0,o.createElement)("i",{className:"bb-icons-rl-eye"})))}function Re({field:e,values:t,disabled:n}){var[a,r]=(0,s.useState)(!1),[i,c]=(0,s.useState)(null),d=(0,s.useRef)(null),u=(0,s.useRef)(null),b=(0,s.useRef)(!1),m=function(n){var a=e.ajax_action||"";if(a){d.current&&d.current.abort();var i=new AbortController;d.current=i,r(!0),c(null);var o=new FormData;o.append("action",a),o.append("nonce",window.bbAdminData.ajaxNonce);var s=e.watch_field||"";s&&t&&void 0!==t[s]&&(o.append("watch_field",s),o.append("watch_value",t[s]));var b=function(){fetch(window.bbAdminData.ajaxUrl,{method:"POST",credentials:"same-origin",body:o,signal:i.signal}).then((function(e){return e.json()})).then((function(e){r(!1),e.success&&e.data?c({status:e.data.status||"info",message:e.data.message||""}):c({status:"warning",message:e.data&&e.data.message||(0,l.__)("Unable to perform check.","buddyboss")})})).catch((function(e){e&&"AbortError"===e.name||(r(!1),c({status:"warning",message:(0,l.__)("An error occurred while checking.","buddyboss")}))}))};u.current&&(clearTimeout(u.current),u.current=null),n?u.current=setTimeout(b,1500):b()}};(0,s.useEffect)((function(){return b.current||(b.current=!0,m(!1)),function(){u.current&&clearTimeout(u.current),d.current&&d.current.abort()}}),[]);var p=e.watch_field||"",_=p&&t?t[p]:void 0,g=(0,s.useRef)(_);return(0,s.useEffect)((function(){g.current!==_&&b.current&&(g.current=_,m(!0))}),[_]),(0,o.createElement)("div",{className:"bb-admin-status-check"},a&&(0,o.createElement)("div",{className:"bb-admin-status-check__loading"},(0,o.createElement)("span",{className:"bb-admin-status-check__spinner"}),(0,o.createElement)("span",null,(0,l.__)("Checking...","buddyboss"))),!a&&i&&i.message&&(0,o.createElement)("div",{className:"bb-admin-notice bb-admin-notice--"+i.status,dangerouslySetInnerHTML:{__html:(0,f.pn)(i.message)}}))}function Pe(e){return{id:e.id,url:e.url,alt:e.alt||"",title:e.title||""}}function Me({value:e,onChange:t,disabled:n,config:a}){var r=(0,s.useRef)(null),i=(0,s.useRef)(t);i.current=t;var c=a||{},d=c.library_type||"image",u=!!c.multiple,b=c.frame_title||(0,l.__)("Select or Upload Media","buddyboss"),m=c.frame_button_text||(0,l.__)("Use this media","buddyboss"),p=c.placeholder_icon||"plus",_=c.placeholder_variant||"compact",g=(0,s.useRef)({libraryType:d,allowMultiple:u,frameTitle:b,frameButton:m});g.current={libraryType:d,allowMultiple:u,frameTitle:b,frameButton:m};var v=(0,s.useRef)(null);function y(){var e=r.current;if(e){if("function"==typeof e.off&&e.off(),"function"==typeof e.close)try{e.close()}catch(e){}if("function"==typeof e.dispose)try{e.dispose()}catch(e){}r.current=null,v.current=null}}function h(){if(void 0!==window.wp&&window.wp.media){if(r.current&&v.current){var e=v.current;e.allowMultiple===g.current.allowMultiple&&e.libraryType===g.current.libraryType||y()}r.current?r.current.options&&(r.current.options.title=g.current.frameTitle,r.current.options.button&&(r.current.options.button.text=g.current.frameButton)):(r.current=window.wp.media({title:g.current.frameTitle,button:{text:g.current.frameButton},multiple:g.current.allowMultiple,library:{type:g.current.libraryType}}),v.current={allowMultiple:g.current.allowMultiple,libraryType:g.current.libraryType},r.current.on("select",(function(){var e=r.current.state().get("selection");if(g.current.allowMultiple){var t=[];e.each((function(e){t.push(Pe(e.toJSON()))})),i.current(t)}else{var n=e.first();n&&i.current(Pe(n.toJSON()))}}))),r.current.open()}else window.alert((0,l.__)("WordPress Media API is not available.","buddyboss"))}function E(){i.current(g.current.allowMultiple?[]:null)}(0,s.useEffect)((function(){return y}),[]);var w=null;!u&&e&&("string"==typeof e&&e?w={url:e,alt:"",title:""}:"object"==typeof e&&e.url&&(w=e));var N=null!==w,C=u&&Array.isArray(e)&&e.length>0,x=N||C,k="large"===_,S="bb-admin-media-picker"+(k?" bb-admin-media-picker--large":"");return(0,o.createElement)("div",{className:S},N&&(0,o.createElement)("div",{className:"bb-admin-media-picker__preview-area"},(0,o.createElement)("div",{className:"bb-admin-media-picker__preview"},(0,o.createElement)("img",{src:(0,f.Pl)(w.url),alt:w.alt||"",className:"bb-admin-media-picker__preview-image"})),(0,o.createElement)("div",{className:"bb-admin-media-picker__actions"},(0,o.createElement)("button",{type:"button",className:"bb-admin-media-picker__btn bb-admin-media-picker__btn--replace",onClick:h,disabled:n},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-upload-simple"}),(0,l.__)("Replace","buddyboss")),(0,o.createElement)("button",{type:"button",className:"bb-admin-media-picker__btn bb-admin-media-picker__btn--remove",onClick:E,disabled:n},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-x"}),(0,l.__)("Remove","buddyboss")))),C&&(0,o.createElement)("div",{className:"bb-admin-media-picker__multi-area"},(0,o.createElement)("ul",{className:"bb-admin-media-picker__multi-list"},e.map((function(e){return(0,o.createElement)("li",{key:e.id,className:"bb-admin-media-picker__multi-item"},(0,o.createElement)("img",{src:(0,f.Pl)(e.url),alt:e.alt||""}))}))),(0,o.createElement)("div",{className:"bb-admin-media-picker__actions"},(0,o.createElement)("button",{type:"button",className:"bb-admin-media-picker__btn bb-admin-media-picker__btn--replace",onClick:h,disabled:n},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-upload-simple"}),(0,l.__)("Replace selection","buddyboss")),(0,o.createElement)("button",{type:"button",className:"bb-admin-media-picker__btn bb-admin-media-picker__btn--remove",onClick:E,disabled:n},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-x"}),(0,l.__)("Clear","buddyboss")))),!x&&!k&&(0,o.createElement)("div",{className:"bb-admin-media-picker__placeholder-area"},(0,o.createElement)("button",{type:"button",className:"bb-admin-media-picker__placeholder",onClick:h,disabled:n,"aria-label":(0,l.__)("Select media","buddyboss")},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-"+p,"aria-hidden":"true"}))),!x&&k&&(0,o.createElement)("div",{className:"bb-admin-media-picker__placeholder-area bb-admin-media-picker__placeholder-area--large"},(0,o.createElement)("span",{className:"bb-admin-media-picker__placeholder bb-admin-media-picker__placeholder--large","aria-hidden":"true"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-image"})),(0,o.createElement)("button",{type:"button",className:"bb-admin-media-picker__upload-btn",onClick:h,disabled:n},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-upload-simple"}),(0,l.__)("Upload","buddyboss"))))}function Be(e){var t={};return e.forEach((function(e,n){t[e.id]={enabled:!!e.enabled,order:n,icon:e.icon||""}})),t}function Te({value:e,onChange:t,availableItems:n,disabled:a}){var r=(0,s.useMemo)((function(){return function(e,t){var n=t&&"object"==typeof t?t:{},a=e.map((function(e,t){var a=n[e.id]||{};return{id:e.id,label:e.label,icon:a.icon||e.icon||"",enabled:"boolean"!=typeof a.enabled||a.enabled,order:"number"==typeof a.order?a.order:t}}));return a.sort((function(e,t){return e.order-t.order})),a}(n||[],e)}),[n,e]);return r.length?(0,o.createElement)(X.JY,{onDragEnd:function(e){if(e.destination&&e.destination.index!==e.source.index){var n=Array.from(r),a=n.splice(e.source.index,1)[0];n.splice(e.destination.index,0,a),t(Be(n))}}},(0,o.createElement)(X.gL,{droppableId:"bb-admin-sortable-toggle-list"},(function(e){return(0,o.createElement)("ul",{className:"bb-admin-sortable-toggle-list",ref:e.innerRef,...e.droppableProps},r.map((function(e,n){return(0,o.createElement)(X.sx,{key:e.id,draggableId:e.id,index:n,isDragDisabled:!!a},(function(n,i){return(0,o.createElement)("li",{ref:n.innerRef,...n.draggableProps,className:"bb-admin-sortable-toggle-list__item"+(i.isDragging?" is-dragging":"")},(0,o.createElement)("span",{className:"bb-admin-sortable-toggle-list__handle",...n.dragHandleProps,"aria-label":(0,l.__)("Drag to reorder","buddyboss")},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-list","aria-hidden":"true"})),(0,o.createElement)("span",{className:"bb-admin-sortable-toggle-list__toggle"},(0,o.createElement)(c.ToggleControl,{checked:!!e.enabled,onChange:function(n){!function(e,n){var a=r.map((function(t){return t.id!==e?t:Object.assign({},t,{enabled:n})}));t(Be(a))}(e.id,n)},disabled:a,__nextHasNoMarginBottom:!0})),e.icon&&(0,o.createElement)("span",{className:"bb-admin-sortable-toggle-list__icon","aria-hidden":"true"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-"+e.icon})),(0,o.createElement)("span",{className:"bb-admin-sortable-toggle-list__label"},e.label))}))})),e.placeholder)}))):(0,o.createElement)("p",{className:"bb-admin-sortable-toggle-list__empty"},(0,l.__)("No items available.","buddyboss"))}function Le({value:e,onChange:t,disabled:n,config:a}){var r=Array.isArray(e)?e:[],i=a||{},d=i.add_label||(0,l.__)("Add New Link","buddyboss"),u=i.modal_title_add||(0,l.__)("Add Link","buddyboss"),b=i.modal_title_edit||(0,l.__)("Edit Link","buddyboss"),m=(0,s.useState)(null),p=m[0],_=m[1];function g(){_(null)}var v=!!(p&&(p.title||"").trim()&&(p.url||"").trim());return(0,o.createElement)("div",{className:"bb-admin-editable-link-list"},r.length>0&&(0,o.createElement)(X.JY,{onDragEnd:function(e){if(e.destination&&e.destination.index!==e.source.index){var n=Array.from(r),a=n.splice(e.source.index,1)[0];n.splice(e.destination.index,0,a),t(n)}}},(0,o.createElement)(X.gL,{droppableId:"bb-admin-editable-link-list"},(function(e){return(0,o.createElement)("ul",{className:"bb-admin-editable-link-list__list",ref:e.innerRef,...e.droppableProps},r.map((function(e,a){return(0,o.createElement)(X.sx,{key:e.id,draggableId:e.id,index:a,isDragDisabled:!!n},(function(a,i){return(0,o.createElement)("li",{ref:a.innerRef,...a.draggableProps,className:"bb-admin-editable-link-list__item"+(i.isDragging?" is-dragging":"")},(0,o.createElement)("span",{className:"bb-admin-editable-link-list__handle",...a.dragHandleProps,"aria-label":(0,l.__)("Drag to reorder","buddyboss")},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-list","aria-hidden":"true"})),(0,o.createElement)("span",{className:"bb-admin-editable-link-list__body"},(0,o.createElement)("span",{className:"bb-admin-editable-link-list__title-row"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-link bb-admin-editable-link-list__title-icon","aria-hidden":"true"}),(0,o.createElement)("span",{className:"bb-admin-editable-link-list__title"},e.title),(0,o.createElement)("span",{className:"bb-admin-editable-link-list__actions"},(0,o.createElement)("button",{type:"button",className:"bb-admin-editable-link-list__action-btn",onClick:function(){!function(e){_({mode:"edit",id:e.id,title:e.title||"",url:e.url||""})}(e)},disabled:n,"aria-label":(0,l.__)("Edit link","buddyboss")},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-note-pencil","aria-hidden":"true"})),(0,o.createElement)("button",{type:"button",className:"bb-admin-editable-link-list__action-btn bb-admin-editable-link-list__action-btn--delete",onClick:function(){var n,a;n=e.id,a=r.filter((function(e){return e.id!==n})),t(a)},disabled:n,"aria-label":(0,l.__)("Delete link","buddyboss")},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-trash","aria-hidden":"true"})))),(0,o.createElement)("a",{className:"bb-admin-editable-link-list__url",href:(0,f.Pl)(e.url),target:"_blank",rel:"noopener noreferrer"},e.url)))}))})),e.placeholder)}))),(0,o.createElement)(c.Button,{className:"bb-admin-editable-link-list__add",onClick:function(){_({mode:"add",id:"link_"+Date.now()+"_"+Math.random().toString(36).slice(2,7),title:"",url:""})},disabled:n},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-plus","aria-hidden":"true"}),d),p&&(0,o.createElement)(c.Modal,{title:"add"===p.mode?u:b,onRequestClose:g,className:"bb-admin-editable-link-list__modal bb-admin-settings-modal"},(0,o.createElement)("div",{className:"bb-admin-editable-link-list-modal__body bb-admin-settings-modal__body"},(0,o.createElement)(c.TextControl,{label:(0,l.__)("Title","buddyboss"),value:p.title,onChange:function(e){_(Object.assign({},p,{title:e}))},placeholder:(0,l.__)("Enter title","buddyboss"),__nextHasNoMarginBottom:!0}),(0,o.createElement)(c.TextControl,{label:(0,l.__)("URL","buddyboss"),type:"url",value:p.url,onChange:function(e){_(Object.assign({},p,{url:e}))},placeholder:(0,l.__)("Enter URL","buddyboss"),__nextHasNoMarginBottom:!0})),(0,o.createElement)("div",{className:"bb-admin-editable-link-list__modal-actions bb-admin-settings-modal__footer"},(0,o.createElement)(c.Button,{variant:"secondary",onClick:g},(0,l.__)("Cancel","buddyboss")),(0,o.createElement)(c.Button,{variant:"primary",onClick:function(){if(p){var e,n=(p.title||"").trim(),a=(p.url||"").trim();n&&a&&(e="add"===p.mode?r.concat({id:p.id,title:n,url:a,isEditing:!1}):r.map((function(e){return e.id!==p.id?e:Object.assign({},e,{title:n,url:a,isEditing:!1})})),t(e),g())}},disabled:!v},"add"===p.mode?(0,l.__)("Add Link","buddyboss"):(0,l.__)("Save","buddyboss")))))}function je(e){var t=e.field,n=e.value,a=e.values||{},r=e.onChange,i=e.disabled,d=!!n&&"0"!==n&&0!==n,u=a.bb_recaptcha_bypass_text||"",b=(0,s.useState)(u),m=b[0],p=b[1],_=(0,s.useState)(!1),g=_[0],v=_[1],y=(0,s.useRef)(null);(0,s.useEffect)((function(){p(a.bb_recaptcha_bypass_text||"")}),[a.bb_recaptcha_bypass_text]),(0,s.useEffect)((function(){return function(){y.current&&clearTimeout(y.current)}}),[]);var h=(window.bbAdminData&&window.bbAdminData.loginUrl?window.bbAdminData.loginUrl:window.location.origin+"/wp-login.php")+"?bypass_captcha="+(m||"xxUNIQUE_STRINGXS"),E=m.length>=6&&m.length<=10;return(0,o.createElement)("div",{className:"bb-admin-settings-field__recaptcha-bypass"},(0,o.createElement)("div",{className:"bb-admin-settings-field__recaptcha-bypass-row"},(0,o.createElement)(c.ToggleControl,{label:(0,l.__)("Allow bypass, enter a 6 to 10-character string to customize your URL","buddyboss"),checked:d,onChange:function(){var e;e=d?0:1,r(t.name,e)},disabled:i,__nextHasNoMarginBottom:!0}),(0,o.createElement)("input",{type:"text",value:m,onChange:function(e){var t=e.target.value;p(t),r("bb_recaptcha_bypass_text",t)},placeholder:"stringxs",minLength:6,maxLength:10,disabled:i||!d,className:"bb-admin-settings-field__recaptcha-bypass-text"})),(0,o.createElement)("p",{className:"bb-admin-settings-field__recaptcha-bypass-description"},(0,l.__)("The bypass URL enables you to bypass reCAPTCHA in case of issues. We recommend keeping the link below securely stored for accessing your site.","buddyboss")),d&&(0,o.createElement)("div",{className:"bb-admin-settings-field__recaptcha-bypass-url"+(E?"":" bb-admin-settings-field__recaptcha-bypass-url--invalid")},(0,o.createElement)("a",{href:(0,f.Pl)(h),className:"bb-admin-settings-field__recaptcha-bypass-link",target:"_blank",rel:"noopener noreferrer"},h),E&&(0,o.createElement)("button",{type:"button",className:"bb-admin-settings-field__recaptcha-bypass-copy",onClick:function(){E&&(navigator.clipboard&&navigator.clipboard.writeText&&navigator.clipboard.writeText(h),v(!0),y.current&&clearTimeout(y.current),y.current=setTimeout((function(){v(!1)}),2e3))},title:g?(0,l.__)("Copied","buddyboss"):(0,l.__)("Copy","buddyboss")},(0,o.createElement)("i",{className:g?"bb-icon-l bb-icon-check":"bb-icon-l bb-icon-copy"}))))}function Fe(e){const t=e.field,n=e.values||{},a=(e.disabled,t.is_connected||!1),r=t.related_fields||[],i=t.ajax_action||"",d=t.verify_config||{},u=d.modal_title||(0,l.__)("Verify Settings","buddyboss"),b=d.loading_message||(0,l.__)("Verifying credentials...","buddyboss"),m=d.loading_icon||"bb-icons-rl-cloud",f=d.success_icon||"bb-icons-rl-check-circle",_=d.error_icon||"bb-icons-rl-warning-circle",[g,v]=(0,s.useState)(a),[y,h]=(0,s.useState)(!1),[N,C]=(0,s.useState)("idle"),[x,k]=(0,s.useState)(""),S=(0,s.useRef)(null),A=(0,s.useRef)(null),D=(0,s.useRef)(a),I=(0,s.useRef)(null);if(null===I.current&&r.length>0){const e={};r.forEach((function(t){e[t]=n[t]||""})),I.current=e}(0,s.useEffect)((function(){v(t.is_connected||!1),D.current=t.is_connected||!1}),[t.is_connected]),(0,s.useEffect)((function(){return function(){S.current&&S.current.abort()}}),[]);const O=(0,s.useCallback)((function(){C("submitting"),wp.hooks.doAction("bb_admin_verify_field_phase_change",t,"submitting",n),S.current&&S.current.abort();const e=new AbortController;S.current=e;const a=window.bbAdminData?window.bbAdminData.ajaxUrl:"",o=window.bbAdminData?window.bbAdminData.ajaxNonce:"";let s=new FormData;s.append("action",i),s.append("nonce",o);const c=A.current||n;r.forEach((function(e){let t=c[e]||"";if(!A.current&&!t){const n=document.querySelector('input[name="'+e+'"], select[name="'+e+'"], textarea[name="'+e+'"]');n&&n.value&&(t=n.value)}s.append(e,t)})),s=wp.hooks.applyFilters("bb_admin_verify_field_before_ajax",s,t,c),fetch(a,{method:"POST",credentials:"same-origin",body:s,signal:e.signal}).then((function(e){return e.json()})).then((function(e){if(e.success){const a=e.data||{};C("success"),k(a.message||(0,l.__)("Verified successfully.","buddyboss"));const i=a.is_connected||!1;v(i),D.current=i;const o={},s=A.current||n;r.forEach((function(e){o[e]=s[e]||""})),I.current=o,A.current=null,p(),a.status&&window.dispatchEvent(new CustomEvent(E,{detail:{fieldName:t.name,status:a.status}})),(a.updated_fields||a.field_options)&&window.dispatchEvent(new CustomEvent(w,{detail:{fields:a.updated_fields||{},field_options:a.field_options||null,is_connected:i}})),wp.hooks.doAction("bb_admin_verify_field_phase_change",t,"success",a),wp.hooks.doAction("bb_admin_verify_field_success",t,a,n)}else{const a=e.data||{},r=a.message||(0,l.__)("Verification failed.","buddyboss");C("error"),k(r),a.status&&window.dispatchEvent(new CustomEvent(E,{detail:{fieldName:t.name,status:a.status}})),a.updated_fields&&window.dispatchEvent(new CustomEvent(w,{detail:{fields:a.updated_fields,is_connected:!1}})),wp.hooks.doAction("bb_admin_verify_field_phase_change",t,"error",a),wp.hooks.doAction("bb_admin_verify_field_error",t,a,n)}})).catch((function(e){if(e&&"AbortError"===e.name)return;const n=(0,l.__)("Connection failed. Please try again.","buddyboss");C("error"),k(n),wp.hooks.doAction("bb_admin_verify_field_phase_change",t,"error",{message:n})}))}),[i,t,n,r]),R=(0,s.useCallback)((function(){const e={};r.forEach((function(t){e[t]=""})),A.current=e,window.dispatchEvent(new CustomEvent(w,{detail:{fields:e}})),C("loading"),k(""),h(!0),wp.hooks.doAction("bb_admin_verify_field_phase_change",t,"disconnecting",n),O()}),[t,n,r,O]),P=(0,s.useCallback)((function(){C("loading"),k(""),h(!0),wp.hooks.doAction("bb_admin_verify_field_phase_change",t,"loading",n),wp.hooks.applyFilters("bb_admin_verify_field_should_auto_submit",!0,t,n)&&O()}),[t,n,O]),M=(0,s.useCallback)((function(){h(!1),C("idle"),wp.hooks.doAction("bb_admin_verify_field_phase_change",t,"idle",{})}),[t]),B=I.current&&r.some((function(e){return(n[e]||"")!==(I.current[e]||"")}));let T="hidden";D.current&&!B?T="disconnect":D.current&&!B||(T="connect");const L=wp.hooks.applyFilters("bb_admin_verify_field_button_visible","hidden"!==T,t,g,B,n),j=r.every((function(e){const t=document.querySelector('input[name="'+e+'"], select[name="'+e+'"], textarea[name="'+e+'"]');let a=t&&t.value||"";return t&&"SELECT"===t.tagName?a=(a||"").toString().trim():a||(a=n[e]||""),!!String(a).trim()})),F=wp.hooks.applyFilters("bb_admin_verify_field_button_disabled","connect"===T&&!j,t,j,n),U=wp.hooks.applyFilters("bb_admin_verify_field_button_label",t.button_label||(0,l.__)("Verify","buddyboss"),t,g),H=t.disconnect_label||(0,l.__)("Disconnect","buddyboss"),G="disconnect"===T?H:U,z=wp.hooks.applyFilters("bb_admin_verify_field_modal_title",u,t),V=wp.hooks.applyFilters("bb_admin_verify_field_modal_content",null,t,N,n,{submit:O,close:M,setPhase:C,setMessage:k});return(0,o.createElement)("div",{className:"bb-admin-verify-field"},L&&"disconnect"===T&&(0,o.createElement)("button",{type:"button",className:"bb-admin-verify-field__btn bb-admin-verify-field__btn--secondary",onClick:R,disabled:F},G),L&&"connect"===T&&(0,o.createElement)("button",{type:"button",className:"bb-admin-verify-field__btn bb-admin-verify-field__btn--primary",onClick:P,disabled:F},G),y&&(0,o.createElement)("div",{className:"bb-admin-verify-modal"},(0,o.createElement)("div",{className:"bb-admin-verify-modal__backdrop",onClick:M,role:"presentation"}),(0,o.createElement)("div",{className:"bb-admin-verify-modal__container",onClick:function(e){e.stopPropagation()},role:"dialog","aria-labelledby":"bb-admin-verify-modal-title"},(0,o.createElement)("div",{className:"bb-admin-verify-modal__header"},(0,o.createElement)("h2",{id:"bb-admin-verify-modal-title",className:"bb-admin-verify-modal__title"},z),(0,o.createElement)("button",{type:"button",className:"bb-admin-verify-modal__close",onClick:M,"aria-label":(0,l.__)("Close","buddyboss")},(0,o.createElement)("i",{className:"bb-icons-rl-x"}))),(0,o.createElement)("div",{className:"bb-admin-verify-modal__content"},V||(0,o.createElement)(o.Fragment,null,("loading"===N||"submitting"===N)&&(0,o.createElement)("div",{className:"bb-admin-verify-modal__status"},(0,o.createElement)("i",{className:m}),(0,o.createElement)("p",null,b," ",(0,o.createElement)(c.Spinner,null))),"success"===N&&(0,o.createElement)("div",{className:"bb-admin-verify-modal__status bb-admin-verify-modal__status--success"},(0,o.createElement)("i",{className:f}),(0,o.createElement)("p",null,x)),"error"===N&&(0,o.createElement)("div",{className:"bb-admin-verify-modal__status bb-admin-verify-modal__status--error"},(0,o.createElement)("i",{className:_}),(0,o.createElement)("p",null,x)))),(0,o.createElement)("div",{className:"bb-admin-verify-modal__footer"},("loading"===N||"ready"===N)&&(0,o.createElement)(o.Fragment,null,(0,o.createElement)("button",{type:"button",className:"bb-admin-verify-modal__btn bb-admin-verify-modal__btn--primary",onClick:O,disabled:"loading"===N},(0,l.__)("Submit","buddyboss")),(0,o.createElement)("button",{type:"button",className:"bb-admin-verify-modal__btn",onClick:M},(0,l.__)("Cancel","buddyboss"))),"submitting"===N&&(0,o.createElement)("button",{type:"button",className:"bb-admin-verify-modal__btn bb-admin-verify-modal__btn--primary",disabled:!0},(0,l.__)("Verifying...","buddyboss")),("success"===N||"error"===N)&&(0,o.createElement)("button",{type:"button",className:"bb-admin-verify-modal__btn bb-admin-verify-modal__btn--primary",onClick:M},(0,l.__)("OK","buddyboss"))))))}function Ue({field:e,values:t}){var n=e.preview_config||{},a=n.title_key||"buddyboss_seo_title",r=n.description_key||"buddyboss_seo_description",i=t&&t[a]?String(t[a]):"",s=t&&t[r]?String(t[r]):"",c=n.site_name||"",d=n.site_url||"",u=n.site_icon||"",b=i||(0,l.__)("Your SEO title will appear here","buddyboss"),m=s||(0,l.__)("Your SEO description will appear here in search results.","buddyboss"),p=c?c.charAt(0).toUpperCase():"B";return(0,o.createElement)("div",{className:"bb-admin-seo-preview"},(0,o.createElement)("div",{className:"bb-admin-seo-preview__site-row"},u?(0,o.createElement)("img",{className:"bb-admin-seo-preview__icon",src:(0,f.Pl)(u),alt:""}):(0,o.createElement)("span",{className:"bb-admin-seo-preview__icon bb-admin-seo-preview__icon--placeholder","aria-hidden":"true"},p),(0,o.createElement)("div",{className:"bb-admin-seo-preview__site-info"},c&&(0,o.createElement)("span",{className:"bb-admin-seo-preview__site-name"},c),d&&(0,o.createElement)("span",{className:"bb-admin-seo-preview__site-url"},d))),(0,o.createElement)("div",{className:"bb-admin-seo-preview__title"},b),(0,o.createElement)("div",{className:"bb-admin-seo-preview__description"},m))}function He(e,t){if(!e||!t)return"";var n=e[t];return n?"object"==typeof n&&n.url?String(n.url):String(n):""}function Ge({field:e,values:t}){var n,a=e.preview_config||{},r=a.title_key||"buddyboss_og_title",i=a.description_key||"buddyboss_og_description",s=a.image_key||"buddyboss_og_image",c=a.fallback_title_key||"buddyboss_seo_title",d=a.fallback_description_key||"buddyboss_seo_description",u=He(t,r)||He(t,c),b=He(t,i)||He(t,d),m=He(t,s),p=(n=a.site_url||"")?String(n).replace(/^https?:\/\//,"").replace(/\/$/,""):"",_=u||(0,l.__)("Your OG title will appear here","buddyboss"),g=b||(0,l.__)("Your OG description will appear here when this page is shared on social platforms.","buddyboss");return(0,o.createElement)("div",{className:"bb-admin-social-preview"},m&&(0,o.createElement)("div",{className:"bb-admin-social-preview__image"},(0,o.createElement)("img",{src:(0,f.Pl)(m),alt:""})),(0,o.createElement)("div",{className:"bb-admin-social-preview__body"},p&&(0,o.createElement)("span",{className:"bb-admin-social-preview__url"},p),(0,o.createElement)("span",{className:"bb-admin-social-preview__title"},_),(0,o.createElement)("span",{className:"bb-admin-social-preview__description"},g)))}function ze({field:e}){var t=Array.isArray(e&&e.tags)?e.tags:[];if(0===t.length)return null;var n=e.heading||(0,l.__)("Available Tags:","buddyboss");return(0,o.createElement)("div",{className:"bb-admin-tags-reference",role:"note"},(0,o.createElement)("p",{className:"bb-admin-tags-reference__heading"},n),(0,o.createElement)("ul",{className:"bb-admin-tags-reference__list"},t.map((function(e,t){return e&&e.tag?(0,o.createElement)("li",{key:e.tag+"-"+t,className:"bb-admin-tags-reference__item"},(0,o.createElement)("code",{className:"bb-admin-tags-reference__tag"},e.tag),e.description&&(0,o.createElement)("span",{className:"bb-admin-tags-reference__description"}," - "+e.description)):null}))))}function Ve({value:e,onChange:t,fallback:n="#3E34FF",disabled:a=!1}){var r=(0,s.useState)(!1),i=r[0],d=r[1],u=(0,s.useState)(e),b=u[0],m=u[1],p=e||n;function f(){d(!1)}return(0,o.createElement)("div",{className:"bb-admin-settings-color-picker"},(0,o.createElement)(c.Button,{className:"bb-admin-settings-color-picker__button",onClick:function(){a||(m(p),d(!i))},"aria-expanded":i,"aria-label":(0,l.__)("Select color","buddyboss"),disabled:a},(0,o.createElement)("span",{className:"bb-admin-settings-color-picker__swatch"},(0,o.createElement)(c.ColorIndicator,{colorValue:p})),(0,o.createElement)("span",{className:"bb-admin-settings-color-picker__value"},p)),i&&(0,o.createElement)(c.Popover,{className:"bb-admin-settings-color-picker__popover",onClose:f,position:"bottom left"},(0,o.createElement)("div",{className:"bb-admin-settings-color-picker__popover-content"},(0,o.createElement)(c.ColorPicker,{color:b||p,onChange:m,enableAlpha:!1,copyFormat:"hex"}),(0,o.createElement)("div",{className:"bb-admin-settings-color-picker__popover-footer"},(0,o.createElement)(c.Button,{className:"bb-admin-settings-color-picker__apply",onClick:function(){t(b||p),f()}},(0,l.__)("Apply","buddyboss"))))))}function We(e){const t=[];return Array.isArray(e)?(e.forEach((function(e){e.fetch_on_change&&e.fetch_on_change.fields&&e.fetch_on_change.ajax_action&&t.push(e),Array.isArray(e.children)&&t.push.apply(t,We(e.children))})),t):t}function $e(e,t){const[n,a]=(0,s.useState)({}),r=(0,s.useRef)({}),i=(0,s.useRef)({}),o=(0,s.useRef)({}),c=(0,s.useMemo)((function(){return We(e)}),[e]),d=(0,s.useMemo)((function(){return function(e){return e.map((function(e){return e.name+":"+(e.fetch_on_change.fields||[]).join(",")})).join("|")}(c)}),[c]);(0,s.useEffect)((function(){c.forEach((function(e){const n=e.name,a=e.fetch_on_change.fields||[];if(!r.current[n]){const e={};a.forEach((function(n){e[n]=t[n]||""})),r.current[n]=e}}))}),[d]);const u=(0,s.useCallback)((function(e,t){const n=e.fetch_on_change,o=e.name;r.current[o]=Object.assign({},t),i.current[o]&&i.current[o].abort();const s=new AbortController;i.current[o]=s,a((function(e){const t=Object.assign({},e);return t[o]={loading:!0,loadingText:n.loading_text||(0,l.__)("Loading...","buddyboss"),options:e[o]?e[o].options:null,disabled:!0},t})),n.disable_fields&&n.disable_fields.length>0&&n.disable_fields.forEach((function(e){window.dispatchEvent(new CustomEvent(N,{detail:{fields:[e],disabled:!0}}))}));const c=new FormData;c.append("action",n.ajax_action),c.append("nonce",window.bbAdminData.ajaxNonce),Object.keys(t).forEach((function(e){c.append(e,t[e])})),fetch(window.bbAdminData.ajaxUrl,{method:"POST",credentials:"same-origin",body:c,signal:s.signal}).then((function(e){return e.json()})).then((function(e){if(e.success&&e.data){const n=e.data;r.current[o]=Object.assign({},t),a((function(e){const t=Object.assign({},e);return t[o]={loading:!1,options:n.options||null,disabled:void 0!==n.disabled&&n.disabled,defaultValue:n.default_value||""},t}))}else{const t=e.data&&e.data.message||(0,l.__)("Failed to fetch data.","buddyboss");a((function(e){const n=Object.assign({},e);return n[o]={loading:!1,options:[{value:"",label:t}],disabled:!0},n}))}n.disable_fields&&n.disable_fields.length>0&&n.disable_fields.forEach((function(e){window.dispatchEvent(new CustomEvent(N,{detail:{fields:[e],disabled:!1}}))}))})).catch((function(e){e&&"AbortError"===e.name||(a((function(e){const t=Object.assign({},e);return t[o]={loading:!1,options:[{value:"",label:(0,l.__)("Connection error. Please try again.","buddyboss")}],disabled:!0},t})),n.disable_fields&&n.disable_fields.length>0&&n.disable_fields.forEach((function(e){window.dispatchEvent(new CustomEvent(N,{detail:{fields:[e],disabled:!1}}))})))}))}),[]);(0,s.useEffect)((function(){return c.forEach((function(e){const n=e.fetch_on_change,i=n.fields||[],s=n.require_all,l=n.debounce||500,c=e.name,d={};let b=!0;if(i.forEach((function(e){const n=t[e]||"";d[e]=n,n||(b=!1)})),s&&!b)return delete r.current[c],void a((function(e){if(!e[c]||!e[c].options)return e;const t=Object.assign({},e);return delete t[c],t}));const m=r.current[c]||{};i.some((function(e){return(d[e]||"")!==(m[e]||"")}))&&(o.current[c]&&clearTimeout(o.current[c]),o.current[c]=setTimeout((function(){u(e,d)}),l))})),function(){Object.keys(o.current).forEach((function(e){o.current[e]&&clearTimeout(o.current[e])}))}}),[t,c,u]),(0,s.useEffect)((function(){return function(){Object.keys(i.current).forEach((function(e){i.current[e]&&i.current[e].abort()}))}}),[]);const b=(0,s.useCallback)((function(e){return n[e]||null}),[n]);return(0,s.useMemo)((function(){return{getFieldOverrides:b}}),[b])}function qe(e,t){if(!e||!e.field)return!0;for(var n=function(e,t){return e&&"bbAdminData"===e.source?"undefined"!=typeof window&&window.bbAdminData?window.bbAdminData:{}:t||{}}(e,t),a=String(e.field).split("."),r=n,i=0;i(window.bbReactEmotionCallbacks||(window.bbReactEmotionCallbacks={}),window.bbReactEmotionCallbacks.updateEmotion=(e,t)=>{const n=a.current;if(!n||!e||"object"!=typeof e)return;const i={...e},o=!t;o&&void 0===i.is_emotion_active&&(i.is_emotion_active=!0);const s=o?`react_key_${Date.now()}_${1e9*Math.random()|0}`:i.id||`react_key_${Date.now()}_${1e9*Math.random()|0}`;o&&(i.id=s),n("reaction_items",(e=>{let t="object"==typeof e&&null!==e?{...e}:{};return 0===Object.keys(t).length&&Array.isArray(r.current)&&r.current.forEach((e=>{e&&null!=e.id&&(t[e.id]={...e})})),t[s]=i,t})),n("reaction_checks",(e=>{let t="object"==typeof e&&null!==e?{...e}:{};return 0===Object.keys(t).length&&Array.isArray(r.current)&&r.current.forEach((e=>{e&&null!=e.id&&(t[e.id]=e.is_emotion_active?"1":"")})),t[s]=i.is_emotion_active?"1":"",t})),n("bb_reaction_mode","emotions")},window.bbReactEmotionCallbacks.updateReactionButton=e=>{if(!e)return;const t=n.current,r="object"==typeof t?.bb_reactions_button&&null!==t.bb_reactions_button?{...t.bb_reactions_button}:{};r.icon=e,a.current("bb_reactions_button",r)},()=>{window.bbReactEmotionCallbacks&&(delete window.bbReactEmotionCallbacks.updateEmotion,delete window.bbReactEmotionCallbacks.updateReactionButton)})),[]),(0,s.useEffect)((()=>{const e=e=>{if(!(e.target&&e.target.closest&&e.target.closest("#bbpro_reaction_delete_confirmation .bb-pro-reaction-delete-emotion")))return;e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation();const t=null!=window.bbReactPendingDeleteEmotionId?String(window.bbReactPendingDeleteEmotionId):(()=>{const e=window.bp?.Reaction_Admin?.delete_emotion;return e&&(e.attr?e.attr("data-reaction-id"):e.get?.(0)?.getAttribute?.("data-reaction-id"))||null})();if(window.bbReactPendingDeleteEmotionId=null,window.jQuery&&(window.jQuery("#bbpro_reaction_delete_confirmation").css("display","none"),window.jQuery("body").removeClass("modal-open")),window.bp.Reaction_Admin.delete_emotion="",!t)return;const i=n.current;let o="object"==typeof i?.reaction_items&&null!==i.reaction_items?{...i.reaction_items}:{};0===Object.keys(o).length&&Array.isArray(r.current)&&r.current.forEach((e=>{e&&null!=e.id&&(o[e.id]={...e})}));let s="object"==typeof i?.reaction_checks&&null!==i.reaction_checks?{...i.reaction_checks}:{};0===Object.keys(s).length&&Array.isArray(r.current)&&r.current.forEach((e=>{e&&null!=e.id&&(s[e.id]=e.is_emotion_active?"1":"")})),delete o[t],delete s[t];const l=a.current;l&&(l("reaction_items",o),l("reaction_checks",s),l("bb_reaction_mode","emotions"))},t=e=>{e.target&&e.target.closest&&e.target.closest("#bbpro_reaction_delete_confirmation .bb-pro-reaction-cancel-delete-emotion")&&(window.bbReactPendingDeleteEmotionId=null)};return document.addEventListener("click",e,!0),document.addEventListener("click",t,!0),()=>{document.removeEventListener("click",e,!0),document.removeEventListener("click",t,!0)}}),[]),{defaultEmotionsRef:r}}(n,t),d=$e(e,t),u=(0,s.useRef)({}),b=(0,s.useRef)({});(0,s.useEffect)((()=>{e.forEach((e=>{if("select"!==e.type)return;const a=d.getFieldOverrides(e.name);a&&a.defaultValue?u.current[e.name]!==a.defaultValue&&(t[e.name]||(u.current[e.name]=a.defaultValue,n(e.name,a.defaultValue))):u.current[e.name]&&delete u.current[e.name]}))}),[d,t,e,n]);const[m,p]=(0,s.useState)(!1),[_,g]=(0,s.useState)(null),[v,h]=(0,s.useState)({isOpen:!1,message:"",fieldName:"",saveValue:0,title:"",confirmLabel:"",cancelLabel:"",isDestructive:!1}),E=(0,s.useMemo)((()=>{const t={};return e.forEach((e=>{e.description&&"string"==typeof e.description&&(t[e.name+"__desc"]=(0,f.pn)(e.description),/%(?:\d+\$)?s/.test(e.description)&&e.description_controls&&e.description_controls.length>0&&(t[e.name+"__parts"]=e.description.split(/%(?:\d+\$)?s/).map((function(e){return(0,f.pn)(e)})))),e.help_text&&(t[e.name+"__help"]=(0,f.pn)(e.help_text)),e.label_description&&"string"==typeof e.label_description&&(t[e.name+"__label_desc"]=(0,f.pn)(e.label_description)),e.empty_state_title&&"string"==typeof e.empty_state_title&&(t[e.name+"__empty_title"]=(0,f.pn)(e.empty_state_title)),e.option_descriptions&&"object"==typeof e.option_descriptions&&Object.keys(e.option_descriptions).forEach((function(n){t[e.name+"__optdesc__"+n]=(0,f.pn)(e.option_descriptions[n])}))})),t}),[e]),w=e=>!e.conditional||"disable"===e.conditional.action||Ye(e.conditional,t),N=e=>!(!e.conditional||"disable"!==e.conditional.action||Ye(e.conditional,t)),C=n=>{if(!n.parent_field)return!1;const a=t[n.parent_field],r=e.find((e=>e.name===n.parent_field));if("hidden"===r?.type)return!1;const i=!0===r?.invert_value;return void 0!==n.parent_value&&null!==n.parent_value?a!==n.parent_value:i?!!a:!a},x=(e,r=!1)=>{const s=void 0!==t[e.name]?t[e.name]:e.default;switch(e.type){case"toggle":const O=!0===e.invert_value,M=O?!s:!!s;return(0,o.createElement)("div",{className:"bb-admin-settings-form__toggle-wrapper"},(0,o.createElement)(c.ToggleControl,{key:e.name,label:e.description_controls&&e.description_controls.length>0?"":(0,L.decodeEntities)(e.description||""),checked:M,onChange:t=>{const a=O?!t:t;t&&e.confirm_message?h({isOpen:!0,message:e.confirm_message,fieldName:e.name,saveValue:a?1:0,title:e.confirm_title||"",confirmLabel:e.confirm_ok||"",cancelLabel:e.confirm_cancel||"",isDestructive:!!e.confirm_destructive}):n(e.name,a?1:0)},disabled:r,__nextHasNoMarginBottom:!0}));case"checkbox":const B=!0===e.invert_value,j=B?!s:!!s;return(0,o.createElement)(c.CheckboxControl,{key:e.name,label:"",checked:j,onChange:t=>{const a=B?!t:t;n(e.name,a?1:0)},disabled:r,__nextHasNoMarginBottom:!0});case"checkbox_list":return(0,o.createElement)(Q,{field:e,value:s,onChange:n,disabled:r,sanitizedDescription:E[e.name+"__desc"]});case"share_platforms":return(0,o.createElement)(z,{field:e,value:s,onChange:n});case"sso_providers":return(0,o.createElement)(W,{field:e,value:s,onChange:n,disabled:r});case"profile_type_redirects":return(0,o.createElement)(J,null);case"input_button":return(0,o.createElement)(ke,{field:e,value:s,onChange:n,disabled:r,values:t});case"status_check":return(0,o.createElement)(Re,{field:e,values:t,disabled:r});case"recaptcha_bypass":return(0,o.createElement)(je,{field:e,value:s,values:t,onChange:n,disabled:r});case"password":return(0,o.createElement)(Oe,{key:e.name,field:e,value:s,onChange:n,disabled:r});case"text":case"email":case"url":var u=e.field_class&&-1!==e.field_class.indexOf("bb-admin-settings-form__field--copy");return(0,o.createElement)("div",{className:(e.maxlength>0?"bb-admin-settings-form__field-text-wrapper":"")+(u?" bb-admin-settings-form__field-text-copy":"")},(0,o.createElement)(c.TextControl,{key:e.name,label:"",value:s||"",onChange:function(t){e.maxlength&&t.length>e.maxlength&&(t=t.substring(0,e.maxlength)),n(e.name,t)},type:"email"===e.type?"email":"url"===e.type?"url":"text",disabled:r,placeholder:e.placeholder||"",maxLength:e.maxlength>0?e.maxlength:void 0,__nextHasNoMarginBottom:!0}),u&&(0,o.createElement)("button",{type:"button",className:"bb-admin-settings-form__copy-btn",title:(0,l.__)("Copy to clipboard","buddyboss"),onClick:function(){navigator.clipboard&&s&&navigator.clipboard.writeText(s).then((function(){window.dispatchEvent(new CustomEvent("bb-settings-toast",{detail:{status:"success",message:(0,l.__)("Copied to clipboard.","buddyboss")}}))})).catch((function(){window.dispatchEvent(new CustomEvent("bb-settings-toast",{detail:{status:"error",message:(0,l.__)("Failed to copy to clipboard.","buddyboss")}}))}))}},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-copy"})),e.maxlength>0&&(0,o.createElement)("span",{className:"bb-admin-settings-form__textarea-counter"},(s||"").length+"/"+e.maxlength));case"textarea":return(0,o.createElement)("div",{className:"bb-admin-settings-form__textarea-wrapper"},(0,o.createElement)(c.TextareaControl,{key:e.name,label:"",value:s||"",onChange:function(t){e.maxlength&&t.length>e.maxlength&&(t=t.substring(0,e.maxlength)),n(e.name,t)},disabled:r,placeholder:e.placeholder||"",__nextHasNoMarginBottom:!0}),e.maxlength>0&&(0,o.createElement)("span",{className:"bb-admin-settings-form__textarea-counter"},(s||"").length+"/"+e.maxlength));case"select":{const t=d.getFieldOverrides(e.name),a=t&&t.options?t.options:e.options||[],i=r||!!t&&t.disabled;return t&&t.loading?(0,o.createElement)(c.SelectControl,{key:e.name,label:"",value:"",options:[{value:"",label:t.loadingText||(0,l.__)("Loading...","buddyboss")}],disabled:!0,__nextHasNoMarginBottom:!0}):(0,o.createElement)("div",{key:e.name,ref:function(t){if(!t)return;const n=t.querySelector("select");n&&n.getAttribute("name")!==e.name&&n.setAttribute("name",e.name)}},(0,o.createElement)(c.SelectControl,{label:"",value:null!=s?String(s):"",options:a,onChange:t=>n(e.name,t),disabled:i,__nextHasNoMarginBottom:!0}))}case"async_select":var m=!!e.page_view_url,_=!!(e.page_create_args&&e.page_create_args.action&&e.page_create_args.slug),v=m||_,y=b.current[e.name],w=null!=s?String(s):"",N=y&&y.id===w;y&&!N&&delete b.current[e.name];var C,x=N?y.label:e.initial_label||"";"bb-login-redirection"!==e.name&&"bb-logout-redirection"!==e.name||(C=Je);var k=(0,o.createElement)($.x,{key:e.name,value:null!=s?String(s):"",onChange:t=>n(e.name,t),asyncAction:e.async_action||"",placeholder:e.placeholder||"",disabled:r,initialLabel:x,staticOptions:C});return v?(0,o.createElement)("div",{key:e.name,className:"bb-admin-settings-form__page-dropdown"},k,m&&(0,o.createElement)("a",{className:"bb-admin-settings-form__page-dropdown-view components-button is-secondary",href:(0,f.Pl)(e.page_view_url),target:"_blank",rel:"noopener noreferrer"},(0,l.__)("View","buddyboss"),(0,o.createElement)("i",{className:"bb-icons-rl-arrow-up-right"})),!m&&_&&(0,o.createElement)(Ze,{field:e,disabled:r,onCreated:function(t,a){a&&(b.current[e.name]={id:String(t),label:a}),n(e.name,t)}})):k;case"radio":var A=e.options||[],I=A.filter((function(e){return!!e.disabled})).map((function(e){return String(e.value)}));return(0,o.createElement)("div",{key:e.name,ref:function(e){e&&e.querySelectorAll('input[type="radio"]').forEach((function(e){var t=e.closest(".components-radio-control__option");r||I.length&&-1!==I.indexOf(e.value)?(e.disabled=!0,t&&(t.style.opacity="0.5",t.style.pointerEvents="none")):(e.disabled=!1,t&&(t.style.opacity="",t.style.pointerEvents=""))}))}},(0,o.createElement)(c.RadioControl,{label:"",selected:null!=s?String(s):"",options:A,onChange:function(t){I.length&&-1!==I.indexOf(t)||n(e.name,t)},disabled:r}));case"number":return(0,o.createElement)(c.TextControl,{key:e.name,label:"",value:s||0,onChange:t=>n(e.name,t),type:"number",min:e.min,max:e.max,__nextHasNoMarginBottom:!0});case"color":return(0,o.createElement)(Ve,{value:s,onChange:t=>n(e.name,t),fallback:e.default||"#3E34FF",disabled:r});case"image_radio":return(0,o.createElement)(pe,{field:e,value:s,onChange:n,disabled:r,descriptionHtml:E[e.name+"__desc"]||""});case"toggle_list":case"toggle_list_array":if(e.allow_add&&e.extension_data)return(0,o.createElement)(he,{field:e,value:s,onChange:n,disabled:r,sanitizedDescription:E[e.name+"__desc"]});const F="object"==typeof s?s:{};return(0,o.createElement)("div",{className:"bb-admin-settings-field__toggle-list"},(e.options||[]).map((t=>(0,o.createElement)("div",{key:t.value,className:"bb-admin-settings-field__toggle-list-item"},(0,o.createElement)(c.ToggleControl,{label:t.label,checked:!!F[t.value],onChange:a=>{const r={...F,[t.value]:a?1:0};n(e.name,r)},disabled:r||!!t.disabled,__nextHasNoMarginBottom:!0})))));case"dimensions":return(0,o.createElement)(fe,{field:e,values:t,onChange:n});case"reaction_mode":return(0,o.createElement)(S,{field:e,value:s,values:t,onChange:n,defaultEmotionsRef:i,onProBadgeClick:a});case"reaction_button":return(0,o.createElement)(T,{field:e,value:s,onChange:n});case"notice":return(0,o.createElement)("div",{key:e.name,className:`bb-admin-notice bb-admin-notice--${e.notice_type||"info"}`},(0,o.createElement)("span",{dangerouslySetInnerHTML:{__html:E[e.name+"__desc"]||""}}));case"empty_state":return(0,o.createElement)("div",{key:e.name,className:"bb-admin-empty-state"+(e.notice_type?" bb-admin-empty-state--"+e.notice_type:"")},!1!==e.icon&&(0,o.createElement)("div",{className:"bb-admin-empty-state__icon"},(0,o.createElement)("i",{className:e.icon||"bb-icons-rl bb-icons-rl-warning-circle"})),e.empty_state_title&&(0,o.createElement)("h3",{className:"bb-admin-empty-state__title",dangerouslySetInnerHTML:{__html:E[e.name+"__empty_title"]||""}}),e.empty_state_description&&(0,o.createElement)("p",{className:"bb-admin-empty-state__description"},(0,L.decodeEntities)(e.empty_state_description)),!e.empty_state_description&&e.description&&(0,o.createElement)("div",{className:"bb-admin-empty-state__description",dangerouslySetInnerHTML:{__html:E[e.name+"__desc"]||""}}),e.button_label&&e.addon_action&&e.addon_slug?(0,o.createElement)(ee,{action:e.addon_action,slug:e.addon_slug,label:e.button_label,nonceKey:e.addon_nonce_key,busyLabel:e.addon_busy_label,className:"bb-admin-empty-state__button"}):e.button_label&&e.button_url?(0,o.createElement)("a",{href:(0,f.Pl)(e.button_url),className:"bb-admin-empty-state__button",target:e.button_target||"_self",rel:"_blank"===e.button_target?"noopener noreferrer":void 0},e.button_label):null);case"reaction_migration":{const t=e.migration_data||{},n=e.migration_status||"",a="inprogress"===n||"running"===t.status,r="completed"===n;return t.action&&t.total_reactions>0&&!a&&!r?(0,o.createElement)(D,{key:e.name,field:e,onStartConversion:e=>{g({...e,wizardType:"switch"}),p(!0)}}):null}case"reaction_notice":{const t=e.migration_status||"",n=e.migration_data||{};return"inprogress"===t||"running"===n.status||"completed"===t?(0,o.createElement)(R,{key:e.name,field:e}):null}case"reaction_info":return(0,o.createElement)(P,{key:e.name,field:e,onOpenMigrationWizard:()=>{g({wizardType:"footer"}),p(!0)}});case"topic_list":return(0,o.createElement)(G,{field:e,value:s,values:t,onChange:n});case"access_control":return(0,o.createElement)(Z,{field:e,value:s,onChange:t=>n(e.name,t)});case"static_text":return"";case"hidden":return e.description_controls&&e.description_controls.length>0?(0,o.createElement)("span",{className:"bb-admin-settings-field__control--hidden","aria-hidden":"true"}):null;case"document_extensions":return(0,o.createElement)(xe,{field:e,value:s,onChange:n,disabled:r});case"image_upload":return(0,o.createElement)(le,{uploadConfig:e.upload_config||{},uploadUrl:s||"",onUpload:function(t){n(e.name,t)},onRemove:function(){n(e.name,"")},disabled:r});case"media_picker":return(0,o.createElement)(Me,{value:s,onChange:function(t){n(e.name,t)},disabled:r,config:e.media_picker_config||{}});case"sortable_toggle_list":return(0,o.createElement)(Te,{value:s,onChange:function(t){n(e.name,t)},availableItems:e.available_items||[],disabled:r});case"editable_link_list":return(0,o.createElement)(Le,{value:s,onChange:function(t){n(e.name,t)},disabled:r,config:e.editable_link_list_config||{}});case"seo_preview":return(0,o.createElement)(Ue,{field:e,values:t});case"social_preview":return(0,o.createElement)(Ge,{field:e,values:t});case"tags_reference":return(0,o.createElement)(ze,{field:e});case"manage_link":return(0,o.createElement)("button",{type:"button",className:"bb-admin-settings-field__manage-btn",onClick:function(){e.manage_url&&(window.location.href=(0,f.Pl)(e.manage_url))},disabled:r},e.manage_icon&&(0,o.createElement)("i",{className:e.manage_icon}),(0,o.createElement)("span",null,e.manage_label||(0,l.__)("Manage","buddyboss")));case"notification_types":return(0,o.createElement)(K,{field:e,value:s,onChange:function(t){n(e.name,t)}});case"domain_restrictions":return(0,o.createElement)(Ae,{field:e,value:s,onChange:n,disabled:r});case"email_restrictions":return(0,o.createElement)(Ie,{field:e,value:s,onChange:n,disabled:r});case"bb_verify_popup":return(0,o.createElement)(Fe,{field:e,values:t,disabled:r});default:return wp.hooks.applyFilters("bb_admin_settings_custom_field",null,e,s,(function(t){n(e.name,t)}),r,t)||(0,o.createElement)("p",{className:"bb-admin-settings-field__unsupported"},(0,l.__)("Field type not yet supported in React UI.","buddyboss"))}},k=(0,s.useMemo)((function(){return e.filter((function(e){return!e.parent_field}))}),[e]),{groupFirstNames:A,groupLastNames:I}=(0,s.useMemo)((function(){for(var e={},n={},a=0;a((i,s=!1)=>{if(!w(i))return null;const d=r||C(i)||!!i.disabled||N(i),u=x(i,d),b=e.filter((e=>e.parent_field===i.name));if(null===u&&0===b.length)return null;if(("notice"===i.type||"reaction_info"===i.type||i.full_width)&&!i.group?.key)return(0,o.createElement)("div",{key:i.name,className:"bb-admin-settings-form__field bb-admin-settings-form__field--full-width"},u);if("reaction_migration"===i.type||"reaction_notice"===i.type)return u;const m=("toggle"===i.type||"checkbox"===i.type)&&b.length>0,p=["bb-admin-settings-form__field",s?"bb-admin-settings-form__field--child":"",i.parent_field?"bb-admin-settings-form__field--nested":"",d?"bb-admin-settings-form__field--disabled":"",m?"bb-admin-settings-form__field--has-children":"",i.group?.key?"bb-admin-settings-form__field--grouped":"",i.group?.key&&I[i.group.key]===i.name?"bb-admin-settings-form__field--group-last":"",i.field_class||""].filter(Boolean).join(" "),_=i.group?.key&&A[i.group.key]&&A[i.group.key]!==i.name,g=i.label&&""!==i.label.trim()&&!_;return(0,o.createElement)("div",{key:i.name,className:p+(g?"":" bb-admin-settings-form__field--no-label")+("reaction_mode"!==i.type&&i.pro_notice?.show?" bb-admin-settings-form__field--pro-locked":""),"data-field-name":i.name,"data-group":i.group?.key||void 0,"data-group-inline":i.group&&i.group.inline?"true":void 0},g&&(0,o.createElement)("div",{className:"bb-admin-settings-form__field-label"},(0,o.createElement)("label",{htmlFor:"bb-field-"+i.name},(0,o.createElement)("span",{className:"bb-admin-settings-form__field-label-text"},i.label),"reaction_mode"!==i.type&&i.pro_notice?.show&&(0,o.createElement)(o.Fragment,null,(0,o.createElement)("span",{className:"bb-pro-badge"+(i.pro_notice.tier?" bb-pro-badge--"+i.pro_notice.tier:"")},(0,o.createElement)("i",{className:i.pro_notice.badge_icon||""}),(0,o.createElement)("span",null,i.pro_notice.badge_text||"LAUNCH")),i.pro_notice.modal&&a?(0,o.createElement)("button",{type:"button",onClick:()=>a(i),className:"bb-pro-badge__play-link","aria-label":(0,l.__)("Learn more","buddyboss")},(0,o.createElement)("i",{className:i.pro_notice.link_icon||"bb-icons-rl bb-icons-rl-play"})):i.pro_notice.link_url&&(0,o.createElement)("a",{href:(0,f.Pl)(i.pro_notice.link_url),target:"_blank",rel:"noopener noreferrer",className:"bb-pro-badge__play-link","aria-label":(0,l.__)("Learn more about PRO","buddyboss")},(0,o.createElement)("i",{className:i.pro_notice.link_icon||""})))),i.label_description&&(0,o.createElement)("p",{className:"bb-admin-settings-form__field-label-description"},(0,o.createElement)("span",{dangerouslySetInnerHTML:{__html:E[i.name+"__label_desc"]||""}}))),(0,o.createElement)("div",{className:"bb-admin-settings-form__field-content"+("toggle"!==i.type&&"checkbox"!==i.type||!i.description||m?"":" bb-admin-settings-form__field-content--inline")},i.group?.label&&(0,o.createElement)("label",{className:"bb-admin-settings-form__field-group-label"},i.group.label),null!==u&&!1!==u&&(0,o.createElement)("div",{className:"bb-admin-settings-form__field-input-wrapper"},i.prefix&&(0,o.createElement)("span",{className:"bb-admin-settings-form__field-prefix"},i.prefix),u,i.suffix&&(0,o.createElement)("span",{className:"bb-admin-settings-form__field-suffix"},i.suffix)),i.description&&-1===["notice","checkbox_list","share_platforms","topic_list","image_radio","access_control"].indexOf(i.type)&&!(i.allow_add&&i.extension_data)&&("toggle"!==i.type||i.description_controls&&i.description_controls.length>0)&&(()=>{const e=i.description,a=i.description_controls;if(/%(?:\d+\$)?s/.test(e)&&a&&a.length>0){const r=E[i.name+"__parts"],s=r||e.split(/%(?:\d+\$)?s/),l=("toggle"===i.type||"checkbox"===i.type)&&!t[i.name];return(0,o.createElement)("p",{className:"bb-admin-settings-form__field-description bb-admin-settings-form__field-description--has-controls"},s.map(((e,s)=>{var c,u;const b=sn(p,e.target.value),disabled:y},(_||[]).map((e=>(0,o.createElement)("option",{key:e.value,value:e.value},(0,L.decodeEntities)(String(e.label)))))),b&&"text"===b.type&&(0,o.createElement)("input",{type:"text",name:p,className:"bb-admin-settings-form__inline-text",value:v,onChange:e=>n(p,e.target.value),disabled:y}),b&&"number"===b.type&&(0,o.createElement)("input",{type:"number",name:p,className:"bb-admin-settings-form__inline-number",value:v,min:b.min,max:b.max,step:b.step,"aria-label":p,onChange:e=>n(p,parseInt(e.target.value,10)||0),disabled:y}))})))}var r=i.name+"__desc",s=t[i.name];if(i.option_descriptions&&null!=s){var l=i.name+"__optdesc__"+String(s);E[l]&&(r=l)}return(0,o.createElement)("p",{className:"bb-admin-settings-form__field-description",dangerouslySetInnerHTML:{__html:E[r]||""}})})(),i.help_text&&(0,o.createElement)("p",{className:"bb-admin-settings-form__field-help-text",dangerouslySetInnerHTML:{__html:E[i.name+"__help"]||""}}),b.length>0&&(0,o.createElement)("div",{className:"bb-admin-settings-form__child-fields"},b.reduce((function(e,a,i){var s=a.child_group_label||null,l=i>0&&b[i-1].child_group_label||null;return s&&s!==l&&e.push((0,o.createElement)("div",{key:"group-label-"+s+"-"+i,className:"bb-admin-settings-form__child-group-label"},s)),e.push(((e,a=!1)=>{if(!w(e))return null;const i=r||a||!!e.disabled||C(e)||N(e);if("checkbox"===e.type){const a=!0===e.invert_value,r=void 0!==t[e.name]?t[e.name]:e.default,s=a?!r:!!r,l=e.description||"",d=e.description_controls;if(/%(?:\d+\$)?s/.test(l)&&d&&d.length>0){const r=E[e.name+"__parts"]||l.split(/%(?:\d+\$)?s/).map((function(e){return(0,f.pn)(e)})),u=i||!s;return(0,o.createElement)("div",{key:e.name,className:"bb-admin-settings-form__child-field bb-admin-settings-form__child-field--checkbox bb-admin-settings-form__child-field--has-controls "+(i?"bb-admin-settings-form__child-field--disabled":"")},(0,o.createElement)(c.CheckboxControl,{checked:s,onChange:function(t){var r=a?!t:t;n(e.name,r?1:0)},disabled:i,__nextHasNoMarginBottom:!0}),(0,o.createElement)("span",{className:"bb-admin-settings-form__child-field-inline-desc"},r.map((function(e,a){var r,i,s=ap(!1),migrationData:_}):(0,o.createElement)(M,{isOpen:m,onClose:()=>p(!1),migrationData:_})),(0,o.createElement)(y.C,{isOpen:v.isOpen,message:v.message,title:v.title,confirmLabel:v.confirmLabel,cancelLabel:v.cancelLabel,isDestructive:v.isDestructive,onConfirm:()=>{n(v.fieldName,v.saveValue),h({isOpen:!1,message:"",fieldName:"",saveValue:0,title:"",confirmLabel:"",cancelLabel:"",isDestructive:!1})},onCancel:()=>{h({isOpen:!1,message:"",fieldName:"",saveValue:0,title:"",confirmLabel:"",cancelLabel:"",isDestructive:!1})}}))}function Xe({featureId:e,sidePanels:t,navItems:n,currentPanel:a,onNavigate:r,onBack:i,formValues:c}){const d=(0,s.useMemo)((function(){return(t||[]).filter((function(e){return Ye(e.conditional,c||{})}))}),[t,c]);return(0,o.createElement)("nav",{className:"bb-admin-side-nav","aria-label":(0,l.__)("Settings Navigation","buddyboss")},(0,o.createElement)("button",{className:"bb-admin-side-nav__back-btn",onClick:()=>{"function"==typeof i&&i()}},(0,o.createElement)("span",{className:"bb-icons-rl-arrow-left"}),(0,l.__)("Back to Settings","buddyboss")),(0,o.createElement)("ul",{className:"bb-admin-side-nav__list"},d.map((t=>{const n=!!t.external_url,i=t.icon&&(0,o.createElement)("span",{className:"bb-admin-side-nav__icon"},"dashicon"===t.icon.type&&(0,o.createElement)("span",{className:`dashicons ${t.icon.slug||"dashicons-admin-generic"}`}),"font"===t.icon.type&&t.icon.class&&(0,o.createElement)("span",{className:t.icon.class}),("svg"===t.icon.type||"image"===t.icon.type)&&t.icon.url&&(0,o.createElement)("img",{src:(0,f.Pl)(t.icon.url),alt:t.title,className:"bb-admin-side-nav__icon-img"}));return(0,o.createElement)("li",{key:t.id,className:"bb-admin-side-nav__item"},t.divider&&(0,o.createElement)("div",{className:"bb-admin-side-nav__divider"}),n?(0,o.createElement)("a",{className:"bb-admin-side-nav__link bb-admin-side-nav__link--external",href:(0,f.Pl)(t.external_url)},i,(0,o.createElement)("span",{className:"bb-admin-side-nav__text"},t.title),(0,o.createElement)("span",{className:"bb-admin-side-nav__external-indicator","aria-hidden":"true"},(0,o.createElement)("span",{className:"bb-icons-rl bb-icons-rl-arrow-up-right"}))):(0,o.createElement)("button",{className:"bb-admin-side-nav__link "+(a===t.id?"bb-admin-side-nav__link--active":""),onClick:()=>{return n=t.id,void("function"==typeof r&&r(`/settings/${e}/${n}`));var n},"aria-current":a===t.id?"page":void 0},i,(0,o.createElement)("span",{className:"bb-admin-side-nav__text"},t.title)))}))),n&&n.length>0&&(0,o.createElement)(o.Fragment,null,(0,o.createElement)("div",{className:"bb-admin-side-nav__divider"}),(0,o.createElement)("ul",{className:"bb-admin-side-nav__list bb-admin-side-nav__list--nav-items"},n.map((e=>(0,o.createElement)("li",{key:e.id,className:"bb-admin-side-nav__item"},(0,o.createElement)("button",{className:"bb-admin-side-nav__link bb-admin-side-nav__link--nav-item "+(a===e.id?"bb-admin-side-nav__link--active":""),onClick:()=>{return t=e.route,void("function"==typeof r&&r(t));var t},"aria-current":a===e.id?"page":void 0},e.icon&&(0,o.createElement)("span",{className:"bb-admin-side-nav__icon"},"string"==typeof e.icon&&(0,o.createElement)("span",{className:`dashicons ${e.icon||"dashicons-list-view"}`}),"object"==typeof e.icon&&"dashicon"===e.icon.type&&(0,o.createElement)("span",{className:`dashicons ${e.icon.slug||"dashicons-list-view"}`}),"object"==typeof e.icon&&"font"===e.icon.type&&e.icon.class&&(0,o.createElement)("span",{className:e.icon.class}),"object"==typeof e.icon&&("svg"===e.icon.type||"image"===e.icon.type)&&e.icon.url&&(0,o.createElement)("img",{src:(0,f.Pl)(e.icon.url),alt:e.label,className:"bb-admin-side-nav__icon-img"})),(0,o.createElement)("span",{className:"bb-admin-side-nav__text"},e.label))))))))}const Qe=(e=null)=>{if(e){const t=et(e);t&&localStorage.removeItem(`bb_help_content_${t}`)}else{const e=[];for(let t=0;tlocalStorage.removeItem(e)))}},et=e=>{if(!e||"string"!=typeof e)return"";const t=e.trim(),n=t.match(/^https?:\/\/(\d+)\/?$/i);if(n)return n[1];if(t.startsWith("http")||t.includes("?"))try{const e=t.startsWith("http")?t:`https://example.com?${t.split("?")[1]||""}`,n=new URL(e).searchParams.get("article");if(n)return String(n)}catch(e){}return t},tt=e=>"/wp-json/wp/v2/ht-kb/"+encodeURIComponent(e);var nt=i(7009);const at=({isOpen:e,onClose:t,children:n,title:a})=>{const r=(0,s.useRef)(null),[i,c]=(0,s.useState)([]);return(0,s.useEffect)((()=>{if(e)return document.addEventListener("keydown",n),()=>document.removeEventListener("keydown",n);function n(e){"Escape"===e.key&&(document.querySelector(".components-modal__frame")||t())}}),[e,t]),(0,s.useEffect)((()=>{if(e&&r.current){const e=function(e){if(!e)return[];const t=Array.from(e.querySelectorAll("h2")),n={};return t.map((e=>{let t=(e.textContent||e.innerText||"").trim(),a=t.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"");return n[a]?(n[a]++,a=`${a}-${n[a]}`):n[a]=1,{el:e,text:t,anchor:a}}))}(r.current);e.forEach((({el:e,anchor:t})=>{e.id=t})),c(e)}}),[e,n]),e?(0,o.createElement)("div",{className:"bb-rl-help-modal-overlay",onClick:t},(0,o.createElement)("div",{className:"bb-rl-help-modal",onClick:e=>e.stopPropagation()},(0,o.createElement)("div",{className:"bb-rl-help-modal-header"},(0,o.createElement)("h2",null,a),(0,o.createElement)("button",{className:"bb-rl-help-modal-close",onClick:t,"aria-label":(0,l.__)("Close","buddyboss")},(0,o.createElement)("span",null,"×"))),(0,o.createElement)("div",{className:"bb-rl-help-modal-content"},i.length>0&&(0,o.createElement)("nav",{className:"bb-rl-help-modal-toc"},(0,o.createElement)("h3",null,(0,l.__)("Contents","buddyboss")),(0,o.createElement)("ol",null,i.map((({text:e,anchor:t})=>(0,o.createElement)("li",{key:t},(0,o.createElement)("a",{href:`#${t}`,onClick:e=>((e,t)=>{t.preventDefault();const n=document.getElementById(e);n&&n.scrollIntoView({behavior:"smooth"})})(t,e)},e)))))),(0,o.createElement)("div",{ref:r,className:"bb-rl-help-modal-main-content"},n)))):null};var rt=i(4836);const it=i.p+"images/readylaunch.53aacaf1.jpg",ot=i.p+"images/theme.bc1d4a97.jpg",st="bb_wizard_activation",lt="rl_onboarding",ct="bb-rl-onboarding-css",dt="bb-rl-onboarding-js";function ut(){if(window.location){var e=new URL(window.location.href);e.searchParams.set(st,lt),window.location.href=e.toString()}}function bt(e){var t,n=window.bbAdminData||{},a=e&&e.settings||{};t=Object.prototype.hasOwnProperty.call(a,"bb_rl_enabled")?"1"===String(a.bb_rl_enabled):!!n.isReadyLaunch;var r=!!n.isBuddyBossThemeInstalled,i=!!n.canSwitchThemes,u=n.themeOptionsUrl||"",b=!!n.isRlOnboardingCompleted,[m,p]=(0,s.useState)(!1),[f,_]=(0,s.useState)(!1),g=m||!!n.isBuddyBossThemeActive;function v(e,t){"function"==typeof window.CustomEvent&&window.dispatchEvent(new window.CustomEvent(C,{detail:{status:e,message:t}}))}return(0,s.useEffect)((function(){function e(){if(window.history&&"function"==typeof window.history.replaceState){var e=new URL(window.location.href);e.searchParams.has(st)&&(e.searchParams.delete(st),window.history.replaceState({},"",e.toString()))}}function t(){window.location&&new URLSearchParams(window.location.search).get(st)!==lt&&window.bbRlOnboarding&&"function"==typeof window.bbRlOnboarding.unmount&&window.bbRlOnboarding.unmount()}return document.addEventListener("bb_rl_onboarding_completed",e),document.addEventListener("bb_rl_onboarding_skipped",e),document.addEventListener("bb_rl_onboarding_closed",e),window.addEventListener("popstate",t),function(){document.removeEventListener("bb_rl_onboarding_completed",e),document.removeEventListener("bb_rl_onboarding_skipped",e),document.removeEventListener("bb_rl_onboarding_closed",e),window.removeEventListener("popstate",t)}}),[]),t?(0,o.createElement)("div",{className:"bb-admin-welcome-banner bb-admin-welcome-banner--readylaunch"},(0,o.createElement)("div",{className:"bb-admin-welcome-banner__content"},(0,o.createElement)("div",{className:"bb-admin-welcome-banner__text"},(0,o.createElement)("h2",{className:"bb-admin-welcome-banner__title"},(0,l.__)("Welcome to ReadyLaunch","buddyboss")),(0,o.createElement)("div",{className:"bb-admin-welcome-banner__intro"},(0,o.createElement)("h3",{className:"bb-admin-welcome-banner__subtitle"},(0,l.__)("Theme-free community interface","buddyboss")),(0,o.createElement)("div",{className:"bb-admin-welcome-banner__intro-body"},(0,o.createElement)("p",{className:"bb-admin-welcome-banner__description"},(0,l.__)("ReadyLaunch provides a complete, ready-to-use UI for your community, directly connected to the BuddyBoss Platform backend.","buddyboss")),(0,o.createElement)("ul",{className:"bb-admin-welcome-banner__checks"},(0,o.createElement)("li",{className:"bb-admin-welcome-banner__check"},(0,l.__)("Simple management","buddyboss")),(0,o.createElement)("li",{className:"bb-admin-welcome-banner__check"},(0,l.__)("No theme required","buddyboss"))))),!b&&(0,o.createElement)("div",{className:"bb-admin-welcome-banner__actions"},(0,o.createElement)(c.Button,{className:"bb-admin-welcome-banner__btn bb-admin-welcome-banner__btn--secondary",variant:"secondary",onClick:function(){var e=n.rlOnboardingBootstrap;if(e&&e.assets&&e.assets.js){if(window.history&&"function"==typeof window.history.pushState){var t=new URL(window.location.href);t.searchParams.set(st,lt),window.history.pushState({},"",t.toString())}var a=e.wizardData&&e.wizardData.progress||{},r=Number(a.current_step)||0,i=Object.assign({},a,{current_step:Math.max(r,1)});if(window.bbRlOnboarding=Object.assign({},window.bbRlOnboarding||{},e.wizardData||{},{shouldShow:!0,progress:i}),window.bbRlOnboarding&&"function"==typeof window.bbRlOnboarding.mount)window.bbRlOnboarding.mount();else{if(e.assets.css&&!document.getElementById(ct)){var o=document.createElement("link");o.id=ct,o.rel="stylesheet",o.href=e.assets.css,document.head.appendChild(o)}if(!document.getElementById(dt)){var s=document.createElement("script");s.id=dt,s.src=e.assets.js,s.onload=function(){window.bbRlOnboarding&&"function"==typeof window.bbRlOnboarding.mount&&window.bbRlOnboarding.mount()},s.onerror=function(){ut()},document.body.appendChild(s)}}}else ut()}},(0,l.__)("Setup Wizard","buddyboss")))),(0,o.createElement)("div",{className:"bb-admin-welcome-banner__preview"},(0,o.createElement)("img",{src:it,alt:(0,l.__)("ReadyLaunch interface preview","buddyboss"),loading:"lazy"})))):(0,o.createElement)("div",{className:"bb-admin-welcome-banner bb-admin-welcome-banner--theme"},(0,o.createElement)("div",{className:"bb-admin-welcome-banner__content"},(0,o.createElement)("div",{className:"bb-admin-welcome-banner__text"},(0,o.createElement)("h2",{className:"bb-admin-welcome-banner__title"},(0,l.__)("Welcome to BuddyBoss Theme","buddyboss")),(0,o.createElement)("div",{className:"bb-admin-welcome-banner__intro"},(0,o.createElement)("h3",{className:"bb-admin-welcome-banner__subtitle"},(0,l.__)("Customizable WordPress theme","buddyboss")),(0,o.createElement)("div",{className:"bb-admin-welcome-banner__intro-body"},(0,o.createElement)("p",{className:"bb-admin-welcome-banner__description"},(0,l.__)("A premium theme designed to work with BuddyBoss Platform, offering deep design control for courses and communities.","buddyboss")),(0,o.createElement)("ul",{className:"bb-admin-welcome-banner__checks"},(0,o.createElement)("li",{className:"bb-admin-welcome-banner__check"},(0,l.__)("Advanced customization","buddyboss")),(0,o.createElement)("li",{className:"bb-admin-welcome-banner__check"},(0,l.__)("BuddyBoss theme required","buddyboss"))))),(0,o.createElement)("div",{className:"bb-admin-welcome-banner__actions"},!g&&r&&(0,o.createElement)(c.Button,{className:"bb-admin-welcome-banner__btn bb-admin-welcome-banner__btn--primary",variant:"primary",onClick:i?function(){f||(_(!0),(0,d.ZU)("bb_admin_activate_buddyboss_theme").then((function(e){e&&e.success?(window.bbAdminData&&(window.bbAdminData.isBuddyBossThemeActive=!0),p(!0),v("success",e.data&&e.data.message||(0,l.__)("BuddyBoss Theme activated.","buddyboss"))):v("error",e&&e.data&&e.data.message||(0,l.__)("Activation failed. Please try again.","buddyboss"))})).catch((function(e){v("error",e&&e.message||(0,l.__)("Activation failed. Please try again.","buddyboss"))})).then((function(){_(!1)})))}:void 0,isBusy:f,disabled:!i||f,title:i?void 0:(0,l.__)("Theme activation requires the switch_themes capability — contact your network administrator.","buddyboss")},f?(0,l.__)("Activating…","buddyboss"):(0,l.__)("Activate Theme","buddyboss")),!g&&!r&&(0,o.createElement)(c.Button,{className:"bb-admin-welcome-banner__btn bb-admin-welcome-banner__btn--primary",variant:"primary",href:"https://buddyboss.com/pricing/",target:"_blank",rel:"noopener noreferrer"},(0,l.__)("Buy Theme","buddyboss")),g&&u&&(0,o.createElement)(c.Button,{className:"bb-admin-welcome-banner__btn bb-admin-welcome-banner__btn--primary",variant:"primary",href:u},(0,l.__)("Customize Theme","buddyboss")),(0,o.createElement)(c.Button,{className:"bb-admin-welcome-banner__btn bb-admin-welcome-banner__btn--secondary",variant:"secondary",onClick:function(){"function"==typeof e.onFieldChange&&e.onFieldChange("bb_rl_enabled","1")}},(0,l.__)("Use ReadyLaunch","buddyboss")))),(0,o.createElement)("div",{className:"bb-admin-welcome-banner__preview"},(0,o.createElement)("img",{src:ot,alt:(0,l.__)("BuddyBoss Theme interface preview","buddyboss"),loading:"lazy"}))))}const mt={"activity:all_activities":(0,s.lazy)((()=>i.e(794).then(i.bind(i,1794)))),"groups:all_groups":(0,s.lazy)((()=>i.e(483).then(i.bind(i,7483)))),"groups:group_types":(0,s.lazy)((()=>i.e(966).then(i.bind(i,1966)))),"members:profile_types":(0,s.lazy)((()=>i.e(499).then(i.bind(i,8499)))),"members:profile_fields":(0,s.lazy)((()=>i.e(517).then(i.bind(i,4517)))),"members:profile_search":(0,s.lazy)((()=>i.e(223).then(i.bind(i,6223)))),"forums:all_forums":(0,s.lazy)((()=>i.e(424).then(i.bind(i,3424)))),"forums:discussions":(0,s.lazy)((()=>i.e(510).then(i.bind(i,2510)))),"forums:discussion_tags":(0,s.lazy)((()=>i.e(944).then(i.bind(i,944)))),"forums:replies":(0,s.lazy)((()=>i.e(285).then(i.bind(i,4285)))),"moderation:reporting_categories":(0,s.lazy)((()=>i.e(801).then(i.bind(i,6801)))),"moderation:flagged_members":(0,s.lazy)((()=>i.e(231).then(i.bind(i,3231)))),"moderation:reported_content":(0,s.lazy)((()=>i.e(76).then(i.bind(i,5076)))),"emails:all_emails":(0,s.lazy)((()=>i.e(926).then(i.bind(i,6926)))),"invites:invites_list":(0,s.lazy)((()=>i.e(362).then(i.bind(i,3362))))};function pt({featureId:e,sidePanelId:t,onNavigate:n}){const[a,r]=(0,s.useState)(null),[i,u]=(0,s.useState)([]),[g,y]=(0,s.useState)([]),[h,k]=(0,s.useState)({}),[S,A]=(0,s.useState)({}),[D,I]=(0,s.useState)(!0),[O,R]=(0,s.useState)(t||null),[P,M]=(0,s.useState)(!1),[B,T]=(0,s.useState)(null),[L,j]=(0,s.useState)(!1),[F,U]=(0,s.useState)(null),[H,G]=(0,s.useState)({}),[z,V]=(0,s.useState)(0),[W,$]=(0,s.useState)(null),q=(0,s.useCallback)(((e,t,n)=>e?{label:e.label||t||"",upgrade_title:e.title||"",upgrade_description:e.description||n||"",upgrade_image_url:e.image_url||"",upgrade_media:e.media||null,upgrade_url:e.url||"https://www.buddyboss.com/pricing/",upgrade_tier:e.tier||"pro"}:null),[]),Y=(0,s.useCallback)((e=>{const t=q(e?.pro_notice?.modal,e?.label,e?.description);t&&$(t)}),[q]),J=(0,s.useCallback)((e=>{const t=q(e?.pro_notice?.modal,e?.title,e?.description);t&&$(t)}),[q]),[Z,K]=(0,s.useState)(null),[X,Q]=(0,s.useState)({}),[ee,te]=(0,s.useState)(!0),ne=(0,s.useRef)(),ae=(0,s.useRef)(h);(0,s.useEffect)((()=>{ae.current=h}),[h]),(0,s.useEffect)((function(){function e(e){var t=e.detail;t&&t.fieldName&&t.status&&G((function(e){var n=Object.assign({},e);return n[t.fieldName]=t.status,n}))}return window.addEventListener(E,e),function(){window.removeEventListener(E,e)}}),[]),(0,s.useEffect)((function(){function e(e){var t=e.detail;t&&t.status&&K({status:t.status,message:t.message||""})}return window.addEventListener(C,e),function(){window.removeEventListener(C,e)}}),[]),(0,s.useEffect)((()=>{const n=b(e);if(n){r(n);const e=n.side_panels||[];u(e),y(n.navigation||[]);const a=n.settings||{};if(k(a),A(JSON.parse(JSON.stringify(a))),t&&e.some((e=>e.id===t)))R(t);else{const t=e.find((e=>e.is_default))||e[0];R(t?t.id:null)}return I(!1),void te(!1)}const a=new AbortController;return I(!0),(0,d.ZU)("bb_admin_get_feature_settings",{feature_id:e},{signal:a.signal}).then((n=>{if(n.success&&n.data){m(e,n.data),r(n.data);const a=n.data.side_panels||[];u(a),y(n.data.navigation||[]);const i=n.data.settings||{};if(k(i),A(JSON.parse(JSON.stringify(i))),t&&a.some((e=>e.id===t)))R(t);else{const e=a.find((e=>e.is_default))||a[0];R(e?e.id:null)}}I(!1),te(!1)})).catch((e=>{e&&"AbortError"===e.name||(I(!1),te(!1),K({status:"error",message:(0,l.__)("Failed to load settings. Please refresh.","buddyboss")}))})),()=>a.abort()}),[e]),(0,s.useEffect)((()=>{t&&i.some((e=>e.id===t))&&R(t)}),[t,i]),(0,s.useEffect)((()=>{V(0)}),[e]),(0,s.useEffect)((()=>{if(!(D||!a||i.length>0||z>=3)){var n=!1,o=new AbortController,s=setTimeout((function(){(0,d.ZU)("bb_admin_get_feature_settings",{feature_id:e},{signal:o.signal}).then((function(a){if(!n){if(a&&a.success&&a.data){var i=a.data.side_panels||[];if(i.length>0){m(e,a.data),r(a.data),u(i),y(a.data.navigation||[]);var o=a.data.settings||{};k(o),A(JSON.parse(JSON.stringify(o)));var s=t&&i.some((function(e){return e.id===t}))?t:(i.find((function(e){return e.is_default}))||i[0]).id;return R(s),void V(0)}}V((function(e){return e+1}))}})).catch((function(e){e&&"AbortError"===e.name||V((function(e){return e+1}))}))}),1500);return function(){n=!0,o.abort(),clearTimeout(s)}}}),[D,a,i.length,e,t,z]),(0,s.useEffect)((()=>{var t=null;const n=()=>{t&&t.abort(),t=new AbortController,(0,d.ZU)("bb_admin_get_feature_settings",{feature_id:e},{signal:t.signal}).then((t=>{if(t.success&&t.data)if("reactions"===e){const n=ae.current;m(e,{...t.data,settings:n}),r(t.data),u(t.data.side_panels||[])}else{const n=t.data.settings||{};m(e,t.data),r(t.data),u(t.data.side_panels||[]),k(n),A(JSON.parse(JSON.stringify(n)))}})).catch((e=>{e&&"AbortError"===e.name||K({status:"error",message:(0,l.__)("Failed to refresh settings. Please try again.","buddyboss")})}))};return window.addEventListener("bb-admin-refetch-feature",n),()=>{window.removeEventListener("bb-admin-refetch-feature",n),t&&t.abort()}}),[e]),(0,s.useEffect)((function(){function e(e){var t=e.detail&&e.detail.fields,n=e.detail&&e.detail.field_options;(t&&"object"==typeof t||n&&"object"==typeof n)&&(t&&"object"==typeof t&&k((function(e){return Object.assign({},e,t)})),u((function(a){return a.map((function(a){return Object.assign({},a,{sections:(a.sections||[]).map((function(a){return Object.assign({},a,{fields:(a.fields||[]).map((function(a){var r=null,i=t&&void 0!==t[a.name],o=n&&Array.isArray(n[a.name]);return i&&((r=r||{}).default=t[a.name],"notice"===a.type&&(r.description=t[a.name]),void 0===e.detail.is_connected||"input_button"!==a.type&&"bb_verify_popup"!==a.type||(r.is_connected=e.detail.is_connected)),o&&((r=r||{}).options=n[a.name]),r?Object.assign({},a,r):a}))})}))})}))})),p())}return window.addEventListener(w,e),function(){window.removeEventListener(w,e)}}),[]),(0,s.useEffect)((function(){function e(e){var t=e.detail&&e.detail.fields,n=!(!e.detail||!e.detail.disabled);t&&Array.isArray(t)&&function(e,t){u((function(n){return n.map((function(n){return Object.assign({},n,{sections:(n.sections||[]).map((function(n){return Object.assign({},n,{fields:(n.fields||[]).map((function(n){return-1!==e.indexOf(n.name)?Object.assign({},n,t):n}))})}))})}))}))}(t,{disabled:n})}return window.addEventListener(N,e),function(){window.removeEventListener(N,e)}}),[]),(0,s.useEffect)((()=>(ne.current=(()=>{let t;return function(...n){clearTimeout(t),t=setTimeout((()=>{clearTimeout(t),(t=>{0!==Object.keys(t).length&&(0,d.ZU)("bb_admin_save_feature_settings",{feature_id:e,settings:JSON.stringify(t)}).then((n=>{if(n.success)if(K({status:"success",message:(0,l.__)("Settings saved.","buddyboss")}),Q({}),n.data&&n.data.bbAdminDataUpdates&&"object"==typeof n.data.bbAdminDataUpdates&&"undefined"!=typeof window&&window.bbAdminData&&Object.assign(window.bbAdminData,n.data.bbAdminDataUpdates),"reactions"===e)!function(e,t,n,a){const r=void 0!==t.reaction_items;let i=e.data?.migration_data,o=e.data?.migration_status||"";const s="migration_data"in(e.data||{});if(i&&"dismissed"===i.status&&(i={},o=""),r)return void a.ajaxFetch("bb_admin_get_feature_settings",{feature_id:n}).then((e=>{if(!e.success||!e.data)return;let t=e.data;s&&(t={...t,side_panels:x(t.side_panels,i||{},o)}),a.setCachedFeatureData(n,t),a.setFeature(t),a.setSidePanels(t.side_panels||[]);const r=t.settings||{};a.setSettings(r),a.setOriginalSettings(r)}));if(s){const e=e=>x(e,i||{},o);return a.setSidePanels((t=>e(t))),a.setFeature((r=>{if(!r)return r;const i=e(r.side_panels||[]),o=a.getCachedFeatureData(n);return o&&a.setCachedFeatureData(n,{...o,side_panels:i,settings:{...o.settings,...t}}),{...r,side_panels:i}})),a.setSettings((e=>({...e,...t}))),void a.setOriginalSettings((e=>({...e,...t})))}a.setOriginalSettings((e=>({...e,...t})));const l=a.getCachedFeatureData(n);l&&a.setCachedFeatureData(n,{...l,settings:{...l.settings,...t}})}(n,t,e,{ajaxFetch:d.ZU,getCachedFeatureData:b,setCachedFeatureData:m,setFeature:r,setSidePanels:u,setSettings:k,setOriginalSettings:A});else{var a=n.data&&n.data.saved?n.data.saved:t;k((e=>({...e,...a}))),A((e=>({...e,...a})));const r=b(e);r&&m(e,{...r,settings:{...r.settings,...a}}),n.data&&n.data.refresh_panels&&(p(),window.dispatchEvent(new Event("bb-admin-refetch-feature")))}else K({status:"error",message:n.data&&n.data.message||(0,l.__)("Something went wrong. Please try again.","buddyboss")})})).catch((()=>{K({status:"error",message:(0,l.__)("Something went wrong. Please try again.","buddyboss")})}))})(...n)}),1e3)}})(),()=>{ne.current&&ne.current.cancel&&ne.current.cancel()})),[e]),(0,s.useEffect)((()=>{if(!ee&&Object.keys(X).length>0){var e=ae.current;const t=Object.fromEntries(Object.keys(X).map((t=>[t,!0===X[t]?e[t]:X[t]])));ne.current(t)}}),[X,ee]),(0,_.A)(Z,K);var re=(0,s.useMemo)((function(){var e={};return i.forEach((function(t){(t.sections||[]).forEach((function(t){(t.fields||[]).forEach((function(t){"input_button"!==t.type&&"bb_verify_popup"!==t.type||!Array.isArray(t.related_fields)||t.related_fields.forEach((function(t){e[t]=!0}))}))}))})),e}),[i]),ie=(0,s.useMemo)((function(){var e={};return i.forEach((function(t){(t.sections||[]).forEach((function(t){(t.fields||[]).forEach((function(t){t.parent_field&&(e[t.parent_field]||(e[t.parent_field]=[]),e[t.parent_field].push(t.name))}))}))})),e}),[i]);const oe=(0,s.useCallback)(((e,t)=>{if(re[e])k((function(n){return Object.assign({},n,{[e]:t})}));else{K({status:"saving",message:(0,l.__)("Saving changes...","buddyboss")});var n=[];"function"==typeof t||t||(n=ie[e]||[]),k((a=>{var r={...a,[e]:"function"==typeof t?t(a[e]):t};return n.forEach((function(e){r[e]=0})),r})),Q((a=>{const r={...a};return r[e]="function"==typeof t||t,n.forEach((function(e){r[e]=0})),r}))}}),[re,ie]);!function({featureId:e,settings:t,settingsRef:n,initialLoad:a,setSidePanels:r,setSettings:i,handleSettingChange:o}){var l=(0,s.useRef)(null),c=(0,s.useRef)(""),d=(0,s.useRef)(o);d.current=o;var u=t.bb_group_nav_order,b=u&&"object"==typeof u?JSON.stringify(u):"";(0,s.useEffect)((function(){if("groups"===e&&b){for(var t=JSON.parse(b),o=[],s=Object.keys(t),u=0;u{M(!0),j(!0),U(null);try{const t=await(async e=>{if(!e)throw new Error("Content ID is required");const t=et(e);if(!t||!/^\d+$/.test(t))throw new Error("Could not determine help article ID");const n=`bb_help_content_${t}`,a=(e=>{const t=localStorage.getItem(e);if(t){const{timestamp:e,data:n}=JSON.parse(t);if((new Date).getTime()-e<2592e5)return n}return null})(n);if(a)return a;try{const e=await fetch((()=>{const e="undefined"!=typeof window&&window.bbAdminData&&window.bbAdminData.apiUrl?window.bbAdminData.apiUrl:"/wp-json/buddyboss/v1/";return(e.endsWith("/")?e:e+"/")+"help-content/proxy"})(),{method:"POST",credentials:"same-origin",headers:{Accept:"application/json","Content-Type":"application/json","X-WP-Nonce":"undefined"!=typeof window&&window.bbAdminData&&window.bbAdminData.nonce||""},body:JSON.stringify({url:tt(t)})});if(!e.ok){let t=`HTTP ${e.status}`;try{const n=await e.json();n&&"string"==typeof n.message&&n.message&&(t=n.message)}catch(e){}throw new Error(`Failed to fetch help content (${t})`)}const a=await e.json(),r=a&&"object"==typeof a&&a.body&&"object"==typeof a.body?a.body:{},i=r.title&&"string"==typeof r.title.rendered?r.title.rendered:"",o={title:i,content:r.content&&"string"==typeof r.content.rendered?r.content.rendered:"",videoId:(r.acf&&"string"==typeof r.acf.video_id?r.acf.video_id:"")||null,imageUrl:(r.acf&&"string"==typeof r.acf.featured_image?r.acf.featured_image:"")||null};return((e,t)=>{const n={timestamp:(new Date).getTime(),data:t};localStorage.setItem(e,JSON.stringify(n))})(n,o),o}catch(e){throw console.error("Error fetching help content:",e.message||e),e}})(e);T(t)}catch(t){U((0,l.__)("Failed to load help content. Please try again later.","buddyboss")),Qe(e)}finally{j(!1)}};if((0,s.useEffect)((function(){if(!D&&a&&i&&i.length&&!i.find((function(e){return e.id===O&&(!e.conditional||"disable"===e.conditional.action||Ye(e.conditional,h))}))){var r=i.find((function(e){return!e.conditional||"disable"===e.conditional.action||Ye(e.conditional,h)}));r&&r.id!==O&&r.id!==t&&(R(r.id),"function"==typeof n&&n(`/settings/${e}/${r.id}`))}}),[D,a,i,O,t,h,e,n]),D)return(0,o.createElement)("div",{className:"bb-admin-feature-settings bb-admin-loading"},(0,o.createElement)(c.Spinner,null));if(!a)return(0,o.createElement)("div",{className:"bb-admin-feature-settings bb-admin-not-found"},(0,o.createElement)("h2",null,(0,l.__)("Feature not found","buddyboss")),(0,o.createElement)("p",null,(0,l.__)("The requested feature could not be found.","buddyboss")));const le=i.find((function(e){return e.id===O&&(!e.conditional||"disable"===e.conditional.action||Ye(e.conditional,h))})),ce=mt[e+":"+O]||null;return(0,o.createElement)("div",{className:"bb-admin-feature-settings"},(0,o.createElement)("div",{className:"bb-admin-feature-settings__container"},(0,o.createElement)("aside",{className:"bb-admin-feature-settings__sidebar"},(0,o.createElement)(Xe,{featureId:e,sidePanels:i,navItems:g,currentPanel:O,onNavigate:n,onBack:()=>{n("/settings")},formValues:h})),(0,o.createElement)("main",{className:"bb-admin-feature-settings__main"+(ce?" bb-admin-feature-settings__main--custom-panel":"")},ce?(0,o.createElement)(s.Suspense,{fallback:(0,o.createElement)("div",{className:"bb-admin-loading"},(0,o.createElement)(c.Spinner,null))},(0,o.createElement)(ce,{onNavigate:n,helpUrl:le?le.help_url:"",onHelpClick:se,feature:a,settings:h,activePanelId:O})):(0,o.createElement)(o.Fragment,null,(0,o.createElement)("div",{className:"bb-admin-feature-settings__content-wrap"},(0,o.createElement)("div",{className:"bb-admin-feature-settings__content"},"appearance"===e&&"general"===O&&(0,o.createElement)(bt,{settings:h,onFieldChange:oe}),le?(0,o.createElement)(o.Fragment,null,(le.sections||[]).map((e=>{var t=!1,n=!1;if(e.conditional&&(Ye(e.conditional,h)||("disable"===e.conditional.action?t=!0:n=!0)),n)return null;if(t&&!(e.fields||[]).some((function(e){return"hidden"!==e.type&&(!e.conditional||"disable"===e.conditional.action||Ye(e.conditional,h))})))return null;var a=e.section_toggle||null,r=!1;if(a){var i=h[a];r=!i||"0"===i||0===i}return(0,o.createElement)("div",{key:e.id,id:`section-${e.id}`,className:"bb-admin-feature-settings__section"+(t?" bb-admin-feature-settings__section--disabled":"")},(0,o.createElement)("div",{className:"bb-admin-feature-settings__section-header"},(0,o.createElement)("div",{className:"bb-admin-feature-settings__section-header-left"},(0,o.createElement)("h3",{className:"bb-admin-feature-settings__section-title"},e.title),function(){for(var t=e.fields||[],n=null,a=0;aJ(e),className:"bb-admin-feature-settings__section-pro-badge"},(0,o.createElement)("i",{className:e.pro_notice.badge_icon||"bb-icons-rl-crown-simple"}),(0,o.createElement)("span",null,e.pro_notice.badge_text||"UPGRADE LAUNCH")):(0,o.createElement)("a",{href:(0,f.Pl)(e.pro_notice.link_url||"https://www.buddyboss.com/pricing/"),target:"_blank",rel:"noopener noreferrer",className:"bb-admin-feature-settings__section-pro-badge"},(0,o.createElement)("i",{className:e.pro_notice.badge_icon||"bb-icons-rl-crown-simple"}),(0,o.createElement)("span",null,e.pro_notice.badge_text||"UPGRADE LAUNCH"))),(e.help_url||le.help_url)&&(0,o.createElement)(nt.N,{onClick:se,contentId:e.help_url||le.help_url}),a&&(0,o.createElement)("div",{className:"bb-admin-feature-settings__section-toggle"},(0,o.createElement)(c.ToggleControl,{className:"components-form-toggle--is-big",checked:!r,onChange:function(e){oe(a,e?1:0)}})))),(0,o.createElement)("div",{className:"bb-admin-feature-settings__section-body"+(r?" bb-admin-feature-settings__section-body--disabled":"")},e.description&&(0,o.createElement)(s.RawHTML,{className:"bb-admin-feature-settings__section-description"},(0,f.pn)(e.description)),!(r&&e.hide_fields_when_off)&&(0,o.createElement)(Ke,{fields:e.fields||[],values:h,onChange:oe,onProBadgeClick:Y,disabled:t})))}))):0===i.length?(0,o.createElement)("div",{className:"bb-admin-feature-settings__no-section bb-admin-feature-settings__no-section--activating"},z<3?(0,o.createElement)(o.Fragment,null,(0,o.createElement)(c.Spinner,null),(0,o.createElement)("p",null,a&&a.label?(0,l.sprintf)(/* translators: %s: feature label being activated. */ /* translators: %s: feature label being activated. */ -(0,l.__)("Activating %s… this should only take a moment.","buddyboss"),a.label):(0,l.__)("Activating feature… this should only take a moment.","buddyboss"))):(0,o.createElement)(o.Fragment,null,(0,o.createElement)("p",null,(0,l.__)("Couldn't load settings. The feature may not be fully active yet.","buddyboss")),(0,o.createElement)(c.Button,{variant:"secondary",onClick:()=>{V(0)}},(0,l.__)("Try again","buddyboss")))):(0,o.createElement)("div",{className:"bb-admin-feature-settings__no-section"},(0,o.createElement)("p",null,(0,l.__)("Please select a panel from the sidebar.","buddyboss")))))))),Z&&(0,o.createElement)("div",{className:"bb-toast-container"},(0,o.createElement)(_.y,{status:Z.status,message:Z.message,onDismiss:()=>K(null)})),(0,o.createElement)(at,{isOpen:P,onClose:()=>{M(!1),T(null),U(null)},title:B&&B.title||(0,l.__)("Help","buddyboss")},L?(0,o.createElement)("div",{className:"help-content-loading"},(0,o.createElement)(c.Spinner,null),(0,o.createElement)("p",null,(0,l.__)("Loading help content...","buddyboss"))):F?(0,o.createElement)("div",{className:"help-content-error"},(0,o.createElement)("p",null,F)):B?(0,o.createElement)(o.Fragment,null,B.videoId&&/^[a-zA-Z0-9_-]+$/.test(B.videoId)&&(0,o.createElement)("div",{style:{marginBottom:16}},(0,o.createElement)("iframe",{width:"100%",height:"315",src:`https://www.youtube.com/embed/${B.videoId}`,title:(0,l.__)("Video tutorial","buddyboss"),frameBorder:"0",allowFullScreen:!0})),(0,o.createElement)("div",{className:"help-content",dangerouslySetInnerHTML:{__html:(0,rt.sanitizeKbArticle)(B.content)}}),(()=>{const e=B.imageUrl?(0,rt.safeImageUrl)(B.imageUrl):null;return e?(0,o.createElement)("img",{src:e,alt:(0,l.__)("Help content illustration","buddyboss"),style:{width:"100%",borderRadius:8,marginBottom:16}}):null})()):(0,o.createElement)("p",null,(0,l.__)("No help content available.","buddyboss"))),W&&(0,o.createElement)(v,{feature:W,onClose:()=>$(null)}))}function ft(e){var t={};if(!Array.isArray(e))return t;var n={},a={};function r(e){var t=n[e],i=t&&"number"==typeof t.count?t.count:0;return(a[e]||[]).forEach((function(e){i+=r(e.id)})),i}return e.forEach((function(e){n[e.id]=e;var t=a[e.parent]||[];t.push(e),a[e.parent]=t})),e.forEach((function(e){e.parent||(t[e.slug]=r(e.id))})),t}function _t({onNavigate:e}){var t=!(!window.bbAdminData||!window.bbAdminData.hasActiveLicense),n=!(!window.bbAdminData||!window.bbAdminData.hasPlusTier),a=!t,r=t&&!n,i=t&&n,u=(0,s.useState)(""),b=u[0],m=u[1],p=(0,s.useState)([]),f=p[0],_=p[1],g=(0,s.useState)(!1),v=g[0],y=g[1],h=(0,s.useState)(!1),E=h[0],w=h[1],N=(0,s.useState)(!1),C=N[0],x=N[1],k=(0,s.useRef)(null);function S(){var e=k.current;if(e){var t=e.getBoundingClientRect(),n=Math.max(0,t.bottom+window.pageYOffset-window.innerHeight+0);window.scrollTo(0,n)}}var A=(0,s.useCallback)((function(){if(window.DocsBotAI&&"function"==typeof window.DocsBotAI.toggle)return window.DocsBotAI.toggle(),void S();window.bbDocsbotFailed&&window.open("https://buddyboss.com/my-account/?tab=support","_blank","noopener,noreferrer")}),[]),D=(0,s.useCallback)((function(){if(window.DocsBotAI&&"function"==typeof window.DocsBotAI.open)return window.DocsBotAI.open(),void S();window.bbDocsbotFailed&&window.open("https://buddyboss.com/my-account/?tab=support","_blank","noopener,noreferrer")}),[]);(0,s.useEffect)((function(){var e=window.setInterval((function(){var e=!(!window.DocsBotAI||!window.DocsBotAI.isChatbotOpen);x((function(t){return t===e?t:e}))}),400);return function(){window.clearInterval(e)}}),[]);var I=(0,s.useState)([]),O=I[0],R=I[1],P=(0,s.useState)("loading"),M=P[0],B=P[1],T=(0,s.useState)(0),j=T[0],F=T[1],U=(0,s.useState)(!1),H=U[0],G=U[1],z=(0,s.useState)(!1),V=z[0],W=z[1],$=(0,s.useRef)(null),q=(0,s.useRef)(null),Y=(0,s.useRef)(null),J=(0,rt.useKb)(),Z=J.dispatch,K=J.open,X=J.close;(0,s.useEffect)((function(){var e=!1;return(0,d.ZU)("bb_admin_support_access_get").then((function(t){e||t&&t.success&&t.data&&G(!!t.data.enabled)})).catch((function(){})).finally((function(){e||W(!0)})),function(){e=!0}}),[]),(0,s.useEffect)((function(){var e=b.trim();return q.current&&clearTimeout(q.current),e.length<2?(Y.current&&Y.current.abort(),_([]),y(!1)):(y(!0),w(!0),q.current=setTimeout((function(){Y.current&&Y.current.abort();var t=new AbortController;Y.current=t,window.fetch("https://buddyboss.com/wp-json/wp/v2/ht-kb/?search="+encodeURIComponent(e)+"&per_page=8&_fields=id,slug,title,excerpt,link,ht-kb-category",{signal:t.signal}).then((function(e){if(!e.ok)throw new Error("Help search request failed.");return e.json()})).then((function(e){_(Array.isArray(e)?e:[]),y(!1)})).catch((function(e){e&&"AbortError"===e.name||(_([]),y(!1))}))}),300)),function(){q.current&&clearTimeout(q.current)}}),[b]),(0,s.useEffect)((function(){function e(e){$.current&&!$.current.contains(e.target)&&w(!1)}function t(e){"Escape"===e.key&&w(!1)}return document.addEventListener("mousedown",e),document.addEventListener("keydown",t),function(){document.removeEventListener("mousedown",e),document.removeEventListener("keydown",t)}}),[]),(0,s.useEffect)((function(){return function(){Y.current&&Y.current.abort(),q.current&&clearTimeout(q.current)}}),[]),(0,s.useEffect)((function(){var e=new AbortController;return B("loading"),(0,rt.getTaxonomy)(e.signal).then((function(e){Array.isArray(e)?(R(e),B("ready")):B("error")})).catch((function(e){e&&"AbortError"===e.name||B("error")})),function(){e.abort()}}),[j]);var Q=(0,s.useMemo)((function(){if(!Array.isArray(O)||0===O.length)return[];var e={},t={};O.forEach((function(n){e[n.id]=n;var a=t[n.parent]||[];a.push(n),t[n.parent]=a}));var n=ft(O),a=(0,rt.getCuratedOverrides)(),r=(t[0]||[]).map((function(e){var t=a[e.slug]||null;return{id:e.id,slug:e.slug,name:(0,L.decodeEntities)(t&&t.title?t.title:e.name||""),description:(0,L.decodeEntities)(t&&t.description?t.description:e.description||""),icon:t&&t.icon?t.icon:"bb-icons-rl-book",order:t?t.order:999,count:"number"==typeof n[e.slug]?n[e.slug]:0}}));return r.sort((function(e,t){return e.order!==t.order?e.order-t.order:e.name.localeCompare(t.name)})),r.filter((e=>0!==e.count))}),[O]),ee=(0,s.useCallback)((function(e){if(e&&e.slug){w(!1),Z({type:"selectCategory",slug:null}),Z({type:"selectArticle",slug:e.slug}),K();var t=Array.isArray(e["ht-kb-category"])?e["ht-kb-category"]:[];(0,rt.getTaxonomy)().then((function(n){var a=function(e,t){if(!Array.isArray(e)||!t)return"";var n={};e.forEach((function(e){n[e.id]=e}));for(var a=n[t],r=0;a&&a.parent&&n[a.parent]&&r<20;)a=n[a.parent],r++;return a?a.slug:""}(n,t[0]);if(!a)throw new Error("Unresolved knowledge base category.");Z({type:"selectCategory",slug:a}),Z({type:"selectArticle",slug:e.slug})})).catch((function(){X();var t=e.link||"https://www.buddyboss.com/resources/";window.open(t,"_blank","noopener,noreferrer")}))}}),[Z,K,X]),te=(0,s.useCallback)((function(e){Z({type:"selectCategory",slug:e}),K()}),[Z,K]),ne=b.trim().length>=2,ae=E&≠return(0,o.createElement)("div",{className:"bb-admin-help-screen"},(0,o.createElement)("section",{className:"bb-admin-help-hero","aria-labelledby":"bb-admin-help-hero-title"},(0,o.createElement)("div",{className:"bb-admin-help-hero__intro"},(0,o.createElement)("h1",{id:"bb-admin-help-hero-title",className:"bb-admin-help-hero__title"},(0,l.__)("Need Help?","buddyboss")),(0,o.createElement)("p",{className:"bb-admin-help-hero__subtitle"},(0,l.__)("Search our help guides, chat with us, or send us a message.","buddyboss"))),(0,o.createElement)("div",{className:"bb-admin-help-hero__search",role:"search",ref:$},(0,o.createElement)("label",{htmlFor:"bb-admin-help-hero-search",className:"screen-reader-text"},(0,l.__)("Search help guides","buddyboss")),(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-magnifying-glass bb-admin-help-hero__search-icon","aria-hidden":"true"}),(0,o.createElement)("input",{id:"bb-admin-help-hero-search",type:"search",className:"bb-admin-help-hero__search-input",placeholder:(0,l.__)("Describe your issue","buddyboss"),value:b,autoComplete:"off",role:"combobox","aria-expanded":ae,"aria-controls":"bb-admin-help-hero-results",onChange:function(e){m(e.target.value)},onFocus:function(){ne&&w(!0)}}),ae&&(0,o.createElement)("div",{id:"bb-admin-help-hero-results",className:"bb-admin-help-hero__results",role:"listbox"},v&&(0,o.createElement)("p",{className:"bb-admin-help-hero__results-status"},(0,o.createElement)(c.Spinner,null)),!v&&0===f.length&&(0,o.createElement)("p",{className:"bb-admin-help-hero__results-status"},(0,l.__)("No results found.","buddyboss")),!v&&f.map((function(e){return(0,o.createElement)("button",{type:"button",key:e.id,className:"bb-admin-help-hero__result",role:"option","aria-selected":"false",onClick:function(){ee(e)}},(0,o.createElement)("span",{className:"bb-admin-help-hero__result-title"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-file-text bb-admin-help-hero__result-icon","aria-hidden":"true"}),(0,o.createElement)("span",{className:"bb-admin-help-hero__result-title-text"},(0,L.decodeEntities)(e.title&&e.title.rendered||""))),e.excerpt&&e.excerpt.rendered&&(0,o.createElement)("span",{className:"bb-admin-help-hero__result-text"},(t=e.excerpt.rendered,((new DOMParser).parseFromString(t||"","text/html").body.textContent||"").replace(/\s+/g," ").trim())));var t}))))),(0,o.createElement)("div",{className:"bb-admin-help-wrapper"},(0,o.createElement)("div",{className:"bb-admin-help-cards"},(0,o.createElement)("article",{className:"bb-admin-help-card"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-paper-plane-tilt bb-admin-help-card__icon","aria-hidden":"true"}),(0,o.createElement)("div",{className:"bb-admin-help-card__body"},(0,o.createElement)("h2",{className:"bb-admin-help-card__title"},(0,l.__)("Support Ticket","buddyboss")),(0,o.createElement)("p",{className:"bb-admin-help-card__description"},(0,l.__)("Send your request directly to our technical support team – we’re ready to help troubleshoot and guide you.","buddyboss"))),(0,o.createElement)("a",{href:"https://buddyboss.com/my-account/?tab=support",className:"bb-admin-help-card__action is-secondary",target:"_blank",rel:"nofollow noopener noreferrer"},(0,l.__)("Submit a Ticket","buddyboss"))),(0,o.createElement)("article",{className:"bb-admin-help-card"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-key bb-admin-help-card__icon","aria-hidden":"true"}),(0,o.createElement)("div",{className:"bb-admin-help-card__body"},(0,o.createElement)("div",{className:"bb-admin-help-card__title-row"},(0,o.createElement)("h2",{className:"bb-admin-help-card__title"},(0,l.__)("Support Access","buddyboss")),V&&(H?(0,o.createElement)("span",{className:"bb-admin-help-card__status bb-admin-help-card__status--positive"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-check-circle","aria-hidden":"true"}),(0,l.__)("Enabled","buddyboss")):(0,o.createElement)("span",{className:"bb-admin-help-card__status bb-admin-help-card__status--neutral"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-x-circle","aria-hidden":"true"}),(0,l.__)("Disabled","buddyboss")))),(0,o.createElement)("p",{className:"bb-admin-help-card__description"},(0,l.__)("Allow our support team to securely access your site using temporary credentials to troubleshoot issues.","buddyboss"))),(0,o.createElement)(c.Button,{variant:"secondary",className:"bb-admin-help-card__action",onClick:function(){"function"==typeof e&&e("/settings/help/support-access")}},(0,l.__)("Open Access","buddyboss")))),(0,o.createElement)("section",{className:"bb-admin-help-resources","aria-labelledby":"bb-admin-help-resources-title"},(0,o.createElement)("h2",{id:"bb-admin-help-resources-title",className:"bb-admin-help-resources__title"},(0,l.__)("BuddyBoss Knowledge Base","buddyboss")),"loading"===M&&(0,o.createElement)("div",{className:"bb-admin-help-resources__loading","aria-busy":"true","aria-live":"polite"},(0,o.createElement)(c.Spinner,null)),"error"===M&&(0,o.createElement)("div",{className:"bb-admin-help-resources__error",role:"alert"},(0,o.createElement)("p",null,(0,l.__)("Couldn’t load the knowledge base.","buddyboss")),(0,o.createElement)(c.Button,{variant:"secondary",onClick:function(){(0,rt.clearTaxonomy)(),F((function(e){return e+1}))}},(0,l.__)("Retry","buddyboss"))),"ready"===M&&(0,o.createElement)("div",{className:"bb-admin-help-resources__grid"},Q.map((function(e){return(0,o.createElement)("button",{type:"button",key:e.slug,className:"bb-admin-help-resource-card",onClick:function(){te(e.slug)}},(0,o.createElement)("div",{className:"bb-admin-help-resource-card__head"},(0,o.createElement)("i",{className:"bb-icons-rl "+e.icon+" bb-admin-help-resource-card__icon","aria-hidden":"true"}),(0,o.createElement)("span",{className:"bb-admin-help-resource-card__title"},e.name)),e.description&&(0,o.createElement)("div",{className:"bb-admin-help-resource-card__description"},e.description),"number"==typeof e.count&&(0,o.createElement)("span",{className:"bb-admin-help-resource-card__count"},/* translators: %d is the number of articles in this resource category. */ /* translators: %d is the number of articles in this resource category. */ -(0,l.sprintf)((0,l._n)("%d article","%d articles",e.count,"buddyboss"),e.count)))})))),(0,o.createElement)("section",{className:"bb-admin-help-cta","aria-labelledby":"bb-admin-help-cta-title"},(0,o.createElement)("h2",{id:"bb-admin-help-cta-title",className:"bb-admin-help-cta__title"},(0,l.__)("Can’t find the Answer?","buddyboss")),(0,o.createElement)(c.Button,{variant:"primary",className:"bb-admin-help-cta__action",onClick:D},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-robot bb-admin-help-cta__action-icon","aria-hidden":"true"}),(0,o.createElement)("span",{className:"bb-admin-help-cta__action-label"},(0,l.__)("Ask Buddy","buddyboss")),(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-arrow-right bb-admin-help-cta__action-icon","aria-hidden":"true"}))),i&&(0,o.createElement)("div",{className:"bb-admin-help-row"},(0,o.createElement)("section",{className:"bb-admin-help-promo","aria-labelledby":"bb-admin-help-app-promo-title"},(0,o.createElement)("div",{className:"bb-admin-help-promo__media"},(0,o.createElement)("img",{src:"https://bb-features-marketing.s3.amazonaws.com/images/admin/app%203.0.png",alt:(0,l.__)("App 3.0","buddyboss"),className:"bb-admin-help-promo__image"})),(0,o.createElement)("div",{className:"bb-admin-help-promo__body"},(0,o.createElement)("div",{className:"bb-admin-help-promo__text"},(0,o.createElement)("p",{className:"bb-admin-help-promo__eyebrow"},(0,l.__)("App 3.0","buddyboss")),(0,o.createElement)("h2",{id:"bb-admin-help-app-promo-title",className:"bb-admin-help-promo__title bb-admin-help-promo__title-app-3"},(0,l.__)("New BuddyBoss App Next Gen Built on Flutter","buddyboss")),(0,o.createElement)("p",{className:"bb-admin-help-promo__description"},(0,l.__)("Say goodbye to React Native. We have completely rebuilt the BuddyBoss App using Flutter for blazing-fast performance, smoother animations, and a truly unified experience.","buddyboss"))),(0,o.createElement)("a",{target:"_blank",rel:"noopener noreferrer",href:"https://buddyboss.com/pricing/?utm_source=product&utm_medium=platform-plugin&utm_campaign=Help-upgrade-plus-to-app&utm_content=help",className:"bb-admin-help-promo__action bb-admin-help-promo__action-app-3 is-primary"},(0,o.createElement)("span",{className:"bb-admin-help-promo__action-label"},(0,l.__)("Get Next Gen App","buddyboss")))))),r&&(0,o.createElement)("div",{className:"bb-admin-help-row"},(0,o.createElement)("section",{className:"bb-admin-help-promo","aria-labelledby":"bb-admin-help-plus-promo-title"},(0,o.createElement)("div",{className:"bb-admin-help-promo__media"},(0,o.createElement)("img",{src:"https://bb-features-marketing.s3.amazonaws.com/images/admin/upgrade-plus.jpg",alt:(0,l.__)("Upgrade to scale preview","buddyboss"),className:"bb-admin-help-promo__image"})),(0,o.createElement)("div",{className:"bb-admin-help-promo__body"},(0,o.createElement)("div",{className:"bb-admin-help-promo__text"},(0,o.createElement)("p",{className:"bb-admin-help-promo__eyebrow"},(0,l.__)("BuddyBoss Scale","buddyboss")),(0,o.createElement)("h2",{id:"bb-admin-help-plus-promo-title",className:"bb-admin-help-promo__title"},(0,l.__)("Unlock Advanced Scale Features Without Paying More Than the Launch Plan","buddyboss")),(0,o.createElement)("ul",{className:"bb-admin-help-promo__list"},(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Gamification (Save $199/y)","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Point Types & Triggers","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Ranks & Leaderboards","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Achievements","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Competitions","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Offload Media (Save $199/y)","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Domain Restriction","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Premium Top-Rated Support","buddyboss")))),(0,o.createElement)("a",{target:"_blank",rel:"noopener noreferrer",href:"https://buddyboss.com/pricing/?utm_source=product&utm_medium=platform-plugin&utm_campaign=Help-upgrade-pro-to-plus&utm_content=help",className:"bb-admin-help-promo__action bb-admin-help-promo__action-plus is-primary"},(0,o.createElement)("i",{className:"bb-icons-rl-crown-simple"}),(0,o.createElement)("span",{className:"bb-admin-help-promo__action-label"},(0,l.__)("Upgrade Scale","buddyboss")))))),a&&(0,o.createElement)("div",{className:"bb-admin-help-row"},(0,o.createElement)("section",{className:"bb-admin-help-promo","aria-labelledby":"bb-admin-help-pro-promo-title"},(0,o.createElement)("div",{className:"bb-admin-help-promo__media"},(0,o.createElement)("img",{src:"https://bb-features-marketing.s3.amazonaws.com/images/admin/upgrade-pro.jpg",alt:(0,l.__)("Upgrade to launch preview","buddyboss"),className:"bb-admin-help-promo__image"})),(0,o.createElement)("div",{className:"bb-admin-help-promo__body"},(0,o.createElement)("div",{className:"bb-admin-help-promo__text"},(0,o.createElement)("p",{className:"bb-admin-help-promo__eyebrow"},(0,l.__)("BuddyBoss Launch","buddyboss")),(0,o.createElement)("h2",{id:"bb-admin-help-pro-promo-title",className:"bb-admin-help-promo__title"},(0,l.__)("Take Your Community Beyond Basics with BuddyBoss Launch Features","buddyboss")),(0,o.createElement)("ul",{className:"bb-admin-help-promo__list"},(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Premium BuddyBoss Theme","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Unlimited Members, Admins & Moderators","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("LearnDash, MemberPress Courses, TutorLMS, LifterLMS Integration","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Zoom Integration for Meetings","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Image, Video & Document Uploads","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Social Login & Access Controls","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Polls, Custom Reactions & Topics","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Activity Sharing","buddyboss")))),(0,o.createElement)("a",{target:"_blank",rel:"noopener noreferrer",href:"https://buddyboss.com/pricing/?utm_source=product&utm_medium=platform-plugin&utm_campaign=Help-upgrade-free-to-pro&utm_content=help",className:"bb-admin-help-promo__action bb-admin-help-promo__action-pro is-primary"},(0,o.createElement)("i",{className:"bb-icons-rl-crown-simple"}),(0,o.createElement)("span",{className:"bb-admin-help-promo__action-label"},(0,l.__)("Upgrade Launch","buddyboss"))))))),(0,o.createElement)("footer",{ref:k,className:"bb-admin-help-footer","aria-label":(0,l.__)("Chat with Buddy","buddyboss")},(0,o.createElement)(c.Button,{variant:"primary",className:"bb-admin-help-footer__action",onClick:A,"aria-expanded":C},(0,o.createElement)("i",{className:"bb-icons-rl bb-admin-help-footer__action-icon "+(C?"bb-icons-rl-x":"bb-icons-rl-robot"),"aria-hidden":"true"}),(0,o.createElement)("span",{className:"bb-admin-help-footer__action-label"},C?(0,l.__)("Need Help","buddyboss"):(0,l.__)("Chat with Buddy","buddyboss")))))}var gt=[{label:(0,l.__)("1 day","buddyboss"),value:"1"},{label:(0,l.__)("3 days","buddyboss"),value:"3"},{label:(0,l.__)("5 days","buddyboss"),value:"5"},{label:(0,l.__)("7 days","buddyboss"),value:"7"}];function vt({isOpen:e,value:t,onClose:n,onSave:a}){var r=(0,s.useState)(t||"1"),i=r[0],d=r[1];return(0,s.useEffect)((function(){e&&d(t||"1")}),[e,t]),e?(0,o.createElement)(c.Modal,{title:(0,l.__)("Modify Access Duration","buddyboss"),onRequestClose:n,className:"bb-admin-modify-duration-modal bb-admin-settings-modal",shouldCloseOnClickOutside:!1},(0,o.createElement)("div",{className:"bb-admin-settings-modal__body"},(0,o.createElement)(c.SelectControl,{label:(0,l.__)("Extend support access by:","buddyboss"),value:i,options:gt,onChange:function(e){d(e)},__nextHasNoMarginBottom:!0})),(0,o.createElement)("div",{className:"bb-admin-settings-modal__footer"},(0,o.createElement)(c.Button,{variant:"secondary",onClick:n},(0,l.__)("Cancel","buddyboss")),(0,o.createElement)(c.Button,{variant:"primary",onClick:function(){"function"==typeof a&&a(i)}},(0,l.__)("Save","buddyboss")))):null}function yt({isOpen:e,value:t,onClose:n,onSave:a}){var r=(0,s.useState)(t||""),i=r[0],d=r[1];if((0,s.useEffect)((function(){e&&d(t||"")}),[e,t]),!e)return null;var u=i.trim(),b=/^[0-9]+$/.test(u)&&parseInt(u,10)>0;return(0,o.createElement)(c.Modal,{title:(0,l.__)("Add Ticket Number","buddyboss"),onRequestClose:n,className:"bb-admin-add-ticket-modal bb-admin-settings-modal",shouldCloseOnClickOutside:!1},(0,o.createElement)("div",{className:"bb-admin-settings-modal__body"},(0,o.createElement)(c.TextControl,{className:"bb-admin-add-ticket-modal__input",label:(0,l.__)("Ticket number","buddyboss"),hideLabelFromVision:!0,type:"number",inputMode:"numeric",min:"1",placeholder:(0,l.__)("e.g. 12345","buddyboss"),help:(0,l.__)("Enter the numeric support ticket ID.","buddyboss"),value:i,onChange:function(e){d(e)},__nextHasNoMarginBottom:!0})),(0,o.createElement)("div",{className:"bb-admin-settings-modal__footer"},(0,o.createElement)(c.Button,{variant:"secondary",onClick:n},(0,l.__)("Cancel","buddyboss")),(0,o.createElement)(c.Button,{variant:"primary",onClick:function(){b&&"function"==typeof a&&a(u)},disabled:!b},(0,l.__)("Save","buddyboss"))))}function ht(e){var t=parseInt(e,10)||0;if(t<=0)return{days:0,hours:0,minutes:0,seconds:0};var n=t%60,a=Math.floor(t/60)%60,r=Math.floor(t/3600)%24;return{days:Math.floor(t/86400),hours:r,minutes:a,seconds:n}}function Et(e){return((e=parseInt(e,10)||0)<10?"0":"")+e}function wt({onNavigate:e}){var t=(0,s.useState)(!1),n=t[0],a=t[1],r=(0,s.useState)(!0),i=r[0],u=r[1],b=(0,s.useState)(!1),m=b[0],p=b[1],f=(0,s.useState)({days:0,hours:0,minutes:0,seconds:0}),g=f[0],v=f[1],y=(0,s.useState)(""),h=y[0],E=y[1],w=(0,s.useState)(!1),N=w[0],C=w[1],x=(0,s.useState)([]),k=x[0],S=x[1],A=(0,s.useState)(!1),D=A[0],I=A[1],O=(0,s.useState)(null),R=O[0],P=O[1];(0,_.A)(R,P);var M=function(e){e&&(a(!!e.enabled),v(ht(e.remaining)),S(Array.isArray(e.ticket_numbers)?e.ticket_numbers:[]),e.has_login_url&&e.login_url?E(e.login_url):e.enabled||E(""))};(0,s.useEffect)((function(){var e=!1;return(0,d.ZU)("bb_admin_support_access_get").then((function(t){e||t&&t.success&&M(t.data)})).catch((function(){})).finally((function(){e||u(!1)})),function(){e=!0}}),[]),(0,s.useEffect)((function(){if(n){var e=setInterval((function(){v((function(e){return ht(60*(60*(24*(t=e).days+t.hours)+t.minutes)+t.seconds-1);var t}))}),1e3);return function(){clearInterval(e)}}}),[n]),(0,s.useEffect)((function(){if(n&&!(g.days||g.hours||g.minutes||g.seconds)){var e=!1;return(0,d.ZU)("bb_admin_support_access_get").then((function(t){!e&&t&&t.success&&M(t.data)})).catch((function(){})),function(){e=!0}}}),[n,g]);var B=[{key:"days",value:Et(g.days),label:(0,l.__)("Days","buddyboss")},{key:"hours",value:Et(g.hours),label:(0,l.__)("Hours","buddyboss")},{key:"minutes",value:Et(g.minutes),label:(0,l.__)("Minutes","buddyboss")},{key:"seconds",value:Et(g.seconds),label:(0,l.__)("Seconds","buddyboss")}];return(0,o.createElement)("div",{className:"bb-admin-help-screen bb-admin-support-access"},(0,o.createElement)("div",{className:"bb-admin-help-wrapper"},(0,o.createElement)("button",{type:"button",className:"bb-admin-support-access__back",onClick:function(){"function"==typeof e&&e("/settings/help")}},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-arrow-left bb-admin-support-access__back-icon","aria-hidden":"true"}),(0,o.createElement)("span",{className:"bb-admin-support-access__back-label"},(0,l.__)("Back","buddyboss"))),i?(0,o.createElement)("div",{className:"bb-admin-help--loading"},(0,o.createElement)(c.Spinner,null)):"",(0,o.createElement)("section",{className:"bb-admin-support-access__enable-card "+(n?"":"bb-admin-support-access__enable-card--disabled")},(0,o.createElement)("div",{className:"bb-admin-support-access__enable-text"},(0,o.createElement)("h2",{className:"bb-admin-support-access__enable-title"},(0,l.__)("Enable Support Access","buddyboss")),(0,o.createElement)("p",{className:"bb-admin-support-access__enable-desc"},(0,l.__)("Allow our support team to securely access your site using temporary credentials to troubleshoot issues. All access is logged and automatically expires based on your settings.","buddyboss"))),(0,o.createElement)("div",{className:"bb-admin-support-access__enable-toggle"},(0,o.createElement)(c.ToggleControl,{className:"components-form-toggle--is-big",label:"",checked:n,disabled:i||m,onChange:function(e){m||(p(!0),(0,d.ZU)("bb_admin_support_access_toggle",{enabled:e?"1":"0"}).then((function(t){t&&t.success?(M(t.data),P({status:"success",message:e?(0,l.__)("Support access enabled","buddyboss"):(0,l.__)("Support access disabled","buddyboss")})):P({status:"error",message:t&&t.data&&t.data.message||(0,l.__)("Something went wrong.","buddyboss")})})).catch((function(e){P({status:"error",message:e.message||(0,l.__)("Something went wrong.","buddyboss")})})).finally((function(){p(!1)})))},__nextHasNoMarginBottom:!0}))),n?(0,o.createElement)("section",{className:"bb-admin-support-access__panel"},(0,o.createElement)("div",{className:"bb-admin-support-access__row"},(0,o.createElement)("div",{className:"bb-admin-support-access__countdown"},(0,o.createElement)("p",{className:"bb-admin-support-access__countdown-label"},(0,l.__)("Support access expires in:","buddyboss")),(0,o.createElement)("div",{className:"bb-admin-support-access__countdown-tiles",role:"timer","aria-live":"off"},B.map((function(e){return(0,o.createElement)("div",{key:e.key,className:"bb-admin-support-access__tile"},(0,o.createElement)("span",{className:"bb-admin-support-access__tile-value"},e.value),(0,o.createElement)("span",{className:"bb-admin-support-access__tile-label"},e.label))}))))),(0,o.createElement)("div",{className:"bb-admin-support-access__divider","aria-hidden":"true"}),k.length>0&&(0,o.createElement)("div",{className:"bb-admin-support-access__tickets"},(0,o.createElement)("p",{className:"bb-admin-support-access__tickets-label"},(0,l.__)("Attached tickets:","buddyboss")),(0,o.createElement)("ul",{className:"bb-admin-support-access__tickets-list"},k.map((function(e){return(0,o.createElement)("li",{key:e,className:"bb-admin-support-access__tickets-item"},(0,l.sprintf)(/* translators: %s: ticket number. */ /* translators: %s: ticket number. */ +wp.i18n.sprintf((0,l.__)('Deleting "%s"?',"buddyboss"),a.name),onRequestClose:t,className:"bb-topic-delete-modal bb-admin-settings-modal",shouldCloseOnClickOutside:!1},(0,o.createElement)("div",{className:"bb-topic-delete-modal__body"},(0,o.createElement)("p",{className:"bb-topic-delete-modal__warning"},(0,l.__)("Deleting this topic will remove it from all posts it is assigned to and cannot be undone. Those posts will have no topic unless you assign a new one using the options below.","buddyboss")),(0,o.createElement)(c.RadioControl,{selected:b,options:[{label:(0,l.__)("Move posts to another topic","buddyboss"),value:"migrate"},{label:(0,l.__)("Delete the topic","buddyboss"),value:"delete"}],onChange:m}),"migrate"===b&&(0,o.createElement)("div",{className:"bb-topic-delete-modal__migrate-select"},(0,o.createElement)(c.SelectControl,{value:f,options:g,onChange:_,__nextHasNoMarginBottom:!0}))),(0,o.createElement)("div",{className:"bb-topic-delete-modal__footer"},(0,o.createElement)(c.Button,{variant:"secondary",onClick:t,disabled:d},(0,l.__)("Cancel","buddyboss")),(0,o.createElement)(c.Button,{variant:"primary",isDestructive:!0,onClick:function(){n({old_topic_id:a.topic_id,migrate_type:b,new_topic_id:"migrate"===b?f:0,nonce:i})},isBusy:d,disabled:v},(0,l.__)("Confirm & Delete","buddyboss"))))}function H(e,t){var n=window.ajaxurl||window.bbAdminData&&window.bbAdminData.ajaxUrl||"/wp-admin/admin-ajax.php",a=window.bbAdminData&&window.bbAdminData.ajaxNonce||"",r=new FormData;return r.append("action",e),a&&r.append("nonce",a),Object.keys(t).forEach((function(e){var n=t[e];Array.isArray(n)?n.forEach((function(t){r.append(e+"[]",t)})):r.append(e,n)})),fetch(n,{method:"POST",credentials:"same-origin",body:r}).then((function(e){if(!e.ok)throw new Error("HTTP "+e.status+": "+e.statusText);return e.json()}))}function G({field:e,value:t,values:n,onChange:a}){var r=(0,s.useState)((function(){return e.topics_data||[]})),i=r[0],d=r[1],u=e.nonces||{},b=e.topics_limit||20,m=(0,s.useState)(!1),p=m[0],f=m[1],_=(0,s.useState)(!1),g=_[0],v=_[1],y=(0,s.useState)(!1),h=y[0],E=y[1],w=(0,s.useState)(null),N=w[0],C=w[1],x=(0,s.useState)(null),k=x[0],S=x[1],A=(0,s.useState)([]),D=A[0],I=A[1],O=(0,s.useState)(""),R=O[0],P=O[1],M=(0,s.useState)(!1),B=M[0],T=M[1],L=(0,s.useState)(!1),G=L[0],z=L[1],V=(0,s.useState)(""),W=V[0],q=V[1],$=(0,s.useState)(null),Y=$[0],J=$[1],Z=(0,s.useState)(null),K=Z[0],X=Z[1],Q=(0,s.useCallback)((function(t){T(!0),H("bb_add_topic",{name:t.name,permission_type:t.permission_type,item_type:"activity",item_id:0,nonce:u.add||""}).then((function(t){if(T(!1),t.success&&t.data&&t.data.content&&t.data.content.topic){var n=t.data.content.topic,r=i.concat([n]);d(r),a(e.name,r),f(!1),q("")}else q(t.data&&t.data.message?t.data.message:(0,l.__)("Failed to add topic.","buddyboss"))})).catch((function(){T(!1),q((0,l.__)("An error occurred while adding the topic.","buddyboss"))}))}),[i,u,e.name,a]),ee=(0,s.useCallback)((function(t){T(!0),H("bb_add_topic",{topic_id:t.topic_id,name:t.name,permission_type:t.permission_type,item_type:"activity",item_id:0,nonce:u.add||""}).then((function(n){if(T(!1),n.success&&n.data&&n.data.content&&n.data.content.topic){var r=n.data.content.topic,o=String(t.topic_id),s=i.map((function(e){return String(e.topic_id)===o?r:e}));d(s),a(e.name,s),v(!1),C(null),q("")}else q(n.data&&n.data.message?n.data.message:(0,l.__)("Failed to update topic.","buddyboss"))})).catch((function(){T(!1),q((0,l.__)("An error occurred while updating the topic.","buddyboss"))}))}),[i,u,e.name,a]),te=(0,s.useCallback)((function(e){S(e),z(!0),H("bb_delete_topic",{topic_id:e.topic_id,item_type:"activity",item_id:0,nonce:u.delete||""}).then((function(e){z(!1),e.success&&e.data?(I(e.data.topic_lists||[]),P(e.data.nonce||""),E(!0),q("")):q(e.data&&e.data.message?e.data.message:(0,l.__)("Failed to initiate topic deletion.","buddyboss"))})).catch((function(){z(!1),q((0,l.__)("An error occurred while initiating topic deletion.","buddyboss"))}))}),[u]),ne=(0,s.useCallback)((function(t){T(!0),H("bb_migrate_topic",{old_topic_id:t.old_topic_id,migrate_type:t.migrate_type,new_topic_id:t.new_topic_id||0,item_type:"activity",item_id:0,nonce:t.nonce}).then((function(n){if(T(!1),n.success){var r=i.filter((function(e){return String(e.topic_id)!==String(t.old_topic_id)}));d(r),a(e.name,r),E(!1),S(null),q("")}else q(n.data&&n.data.message?n.data.message:(0,l.__)("Failed to delete topic.","buddyboss"))})).catch((function(){T(!1),q((0,l.__)("An error occurred while deleting the topic.","buddyboss"))}))}),[i,e.name,a]),ae=function(e){return function(t){J(e),t.dataTransfer.effectAllowed="move"}},re=function(e){return function(t){t.preventDefault(),t.dataTransfer.dropEffect="move",X(e)}},ie=function(){if(null!==Y&&null!==K&&Y!==K){var t=i.slice(),n=i.slice(),r=n.splice(Y,1)[0];n.splice(K,0,r),d(n),a(e.name,n),H("bb_update_topics_order",{topic_ids:n.map((function(e){return e.topic_id})),nonce:u.order||""}).then((function(n){n.success||(d(t),a(e.name,t),q((0,l.__)("Failed to save topic order.","buddyboss")))})).catch((function(){d(t),a(e.name,t),q((0,l.__)("Failed to save topic order.","buddyboss"))}))}J(null),X(null)},oe=function(){ie()},se=i.length"object"!=typeof t||Array.isArray(t)?Array.isArray(t)&&t.includes(e):!!a[e]&&"0"!==a[e]&&0!==a[e];return(0,o.createElement)("div",null,(0,o.createElement)("div",{className:"bb-admin-settings-field__checkbox-list-cards"},(e.options||[]).map((t=>(0,o.createElement)("div",{key:t.value,className:`bb_share_item bb_share_item_${t.label}`},(0,o.createElement)("div",{className:"bb_share_icon"},t.icon&&(0,o.createElement)("i",{className:t.icon})),(0,o.createElement)("div",{className:"bb_share_footer"},(0,o.createElement)("span",null,t.label),(0,o.createElement)(c.CheckboxControl,{checked:r(t.value),className:"bb_share_checkbox",onChange:a=>{const i={};(e.options||[]).forEach((function(e){e.value===t.value?i[e.value]=a?1:0:i[e.value]=r(e.value)?1:0})),n(e.name,i)},__nextHasNoMarginBottom:!0})))))),e.description&&(0,o.createElement)(s.RawHTML,{className:"bb-admin-settings-form__field-description"},(0,f.pn)(e.description)))}var V={google:i.p+"images/google.3f5e24a5.png",facebook:i.p+"images/facebook.23caa94d.png",twitter:i.p+"images/twitter.6a0c3dea.png",linkedin:i.p+"images/linkedin.4ca0b443.png",apple:i.p+"images/apple.bee6da10.png"};function W({field:e,value:t,onChange:n,disabled:a}){var r=(0,s.useState)(e.providers||[]),i=r[0],d=r[1],u=(0,s.useState)(null),b=u[0],m=u[1],p=(0,s.useRef)({}),_=(0,s.useRef)({}),g=(0,s.useRef)(null),v=(0,s.useRef)(null),y=(0,s.useRef)(null),h=(0,s.useRef)(null),E=(0,s.useState)(null),w=E[0],x=E[1];(0,s.useEffect)((function(){return function(){clearTimeout(g.current)}}),[]),(0,s.useEffect)((function(){var e=function(e){var t=e.target;if(t.closest("#bb-hello-container")&&(t.matches(".close-modal")||t.closest(".close-modal")||t.matches("#sso_cancel")||t.closest("#sso_cancel"))){e.stopImmediatePropagation(),e.preventDefault();var n=document.getElementById("bb-hello-container"),a=document.getElementById("bb-hello-backdrop");n&&(n.style.display="none"),a&&(a.style.display="none"),document.body.classList.remove("bp-disable-scroll")}};return document.addEventListener("click",e,!0),function(){document.removeEventListener("click",e,!0)}}),[]);var k=(0,s.useCallback)((function(e){y.current=e}),[]),S=(0,s.useCallback)((function(e,t,n){e.preventDefault(),h.current=t,x(n)}),[]),A=(0,s.useCallback)((function(){var e=y.current,t=h.current;if(y.current=null,h.current=null,x(null),null!==e&&null!==t&&e!==t){var n=i.slice(),a=n.splice(e,1)[0];n.splice(t,0,a),d(n);var r=n.map((function(e){return e.id})),o=window.bbSSOAdminVars?window.bbSSOAdminVars.nonce:"",s=new FormData;s.append("action","bb-social-login"),s.append("nonce",o),s.append("view","orderProviders"),r.forEach((function(e){s.append("ordering[]",e)})),window.dispatchEvent(new CustomEvent(C,{detail:{status:"saving",message:(0,l.__)("Saving changes...","buddyboss")}})),fetch(window.bbAdminData.ajaxUrl,{method:"POST",body:s}).then((function(e){return e.json()})).then((function(e){e.success?window.dispatchEvent(new CustomEvent(C,{detail:{status:"success",message:(0,l.__)("Settings saved.","buddyboss")}})):window.dispatchEvent(new CustomEvent(C,{detail:{status:"error",message:e.data&&e.data.message?e.data.message:(0,l.__)("Failed to save order.","buddyboss")}}))})).catch((function(){window.dispatchEvent(new CustomEvent(C,{detail:{status:"error",message:(0,l.__)("Failed to save order.","buddyboss")}}))}))}}),[i]);return(0,o.createElement)("div",{className:"bb-admin-sso-providers bb-sso-list"},(0,o.createElement)("div",{className:"bb-admin-sso-providers__grid"},i.map((function(e,t){var n=function(e){return void 0!==e.enabled&&!!e.enabled}(e),r=b===e.id;return(0,o.createElement)("div",{key:e.id,className:"bb-admin-sso-providers__card bb-sso-item"+(n?"":" bb-admin-sso-providers__card--disabled is-disabled")+(w===e.id&&y.current!==t?" bb-admin-sso-providers__card--drag-over":""),draggable:!a,onDragStart:function(){k(t)},onDragOver:function(n){S(n,t,e.id)},onDrop:A,onDragEnd:function(){y.current=null,h.current=null,x(null)},"data-provider":e.id,"data-state":e.state||""},(0,o.createElement)("button",{type:"button",className:"bb-box-item-edit bb-box-item-edit--sso bb-admin-sso-providers__edit-trigger","aria-hidden":"true",tabIndex:-1},(0,o.createElement)("i",{className:"bb-icon-l bb-icon-pencil"})),(0,o.createElement)("div",{className:"bb-admin-sso-providers__card-icon"},e.icon?(0,o.createElement)("img",{src:(0,f.Pl)(e.icon),alt:e.label}):V[e.id]?(0,o.createElement)("img",{src:V[e.id],alt:e.label}):(0,o.createElement)("span",{className:"bb-admin-sso-providers__card-icon-placeholder"},e.label.charAt(0)),(0,o.createElement)(c.CheckboxControl,{checked:n,className:"bb-admin-sso-providers__card-checkbox",disabled:a||!e.tested,onChange:function(){!function(e){if(!_.current[e.id]&&e.tested){_.current[e.id]=!0;var t=e.state,n="enabled"===t?"disabled":"enabled";d((function(t){return t.map((function(t){return t.id===e.id?Object.assign({},t,{enabled:"enabled"===n,state:n}):t}))})),window.dispatchEvent(new CustomEvent(C,{detail:{status:"saving",message:(0,l.__)("Saving changes...","buddyboss")}}));var a=window.bbSSOAdminVars||{},r=new FormData;r.append("action","bb_sso_enable_provider"),r.append("nonce",a.nonce||""),r.append("provider",e.id),r.append("state",t),fetch(a.ajax_url||window.bbAdminData.ajaxUrl,{method:"POST",credentials:"same-origin",body:r}).then((function(e){return e.json()})).then((function(n){n.success?(clearTimeout(g.current),g.current=setTimeout((function(){window.dispatchEvent(new CustomEvent(C,{detail:{status:"success",message:(0,l.__)("Settings saved.","buddyboss")}}))}),500),d((function(e){var t=e.filter((function(e){return"enabled"===e.state})).map((function(e){return e.id})),n=1===t.length&&"twitter"===t[0]||0===t.length;return v.current!==n&&(v.current=n,window.dispatchEvent(new CustomEvent(N,{detail:{fields:["bb-additional-sso-name","bb-additional-sso-profile-picture"],disabled:n}}))),e}))):(d((function(n){return n.map((function(n){return n.id===e.id?Object.assign({},n,{enabled:"enabled"===t,state:t}):n}))})),window.dispatchEvent(new CustomEvent(C,{detail:{status:"error",message:(0,l.__)("Failed to save.","buddyboss")}})))})).catch((function(){d((function(n){return n.map((function(n){return n.id===e.id?Object.assign({},n,{enabled:"enabled"===t,state:t}):n}))})),window.dispatchEvent(new CustomEvent(C,{detail:{status:"error",message:(0,l.__)("Failed to save.","buddyboss")}}))})).finally((function(){delete _.current[e.id]}))}}(e)},__nextHasNoMarginBottom:!0})),(0,o.createElement)("div",{className:"bb-admin-sso-providers__card-footer"},(0,o.createElement)("span",{className:"bb-admin-sso-providers__card-label"},e.label),(0,o.createElement)("button",{type:"button",ref:function(t){p.current[e.id]=t},className:"bb-admin-sso-providers__card-menu",disabled:a,"aria-label":e.label+" "+(0,l.__)("options","buddyboss"),onClick:function(){m(r?null:e.id)}},(0,o.createElement)("i",{className:"bb-icons-rl-dots-three"})),r&&p.current[e.id]&&(0,o.createElement)(c.Popover,{anchor:p.current[e.id],position:"bottom right",onClose:function(){m(null)},className:"bb-admin-sso-providers__menu-popover"},(0,o.createElement)("div",{className:"bb-admin-sso-providers__menu"},(0,o.createElement)("button",{type:"button",className:"bb-admin-sso-providers__menu-item",onClick:function(){!function(e){m(null);var t=document.querySelector('.bb-sso-list .bb-sso-item[data-provider="'+e+'"]');if(t){var n=t.querySelector(".bb-box-item-edit--sso");n&&n.click()}}(e.id)}},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-pencil-simple"}),(0,l.__)("Edit","buddyboss"))))))}))),i.map((function(e){var t=JSON.stringify({url:e.test_url||"",width:e.popup_width||800,height:e.popup_height||600,test_status:e.tested||0,state:e.state||"not-configured"});return(0,o.createElement)("input",{key:"hidden_"+e.id,type:"hidden",id:"sso_validate_popup_"+e.id+"_data",name:"sso_validate_popup_"+e.id+"_data",defaultValue:"","data-hidden-attr":t})})),(0,o.createElement)("div",{id:"bb-hello-backdrop",className:"bb-hello-backdrop-sso bb-modal-backdrop",style:{display:"none"},onClickCapture:function(e){e.stopPropagation()}}),(0,o.createElement)("div",{id:"bb-hello-container",className:"bb-hello-sso bb-modal-panel bb-modal-panel--sso",role:"dialog","aria-labelledby":"bb-hello-title",style:{display:"none"}}))}var q=i(9021),$=i(9786),Y=[{value:"",label:(0,l.__)("Default","buddyboss")},{value:"0",label:(0,l.__)("Custom URL","buddyboss")}];function J(){var e=(0,s.useState)([]),t=e[0],n=e[1],a=(0,s.useState)(!0),r=a[0],i=a[1],u=(0,s.useState)(1),b=u[0],m=u[1],p=(0,s.useState)({}),_=p[0],g=p[1],v=(0,s.useRef)({});(0,s.useEffect)((function(){var e=new AbortController;return i(!0),(0,d.WT)({signal:e.signal}).then((function(e){e.success&&e.data&&e.data.member_types&&n(e.data.member_types)})).catch((function(){})).finally((function(){i(!1)})),function(){e.abort(),Object.keys(v.current).forEach((function(e){clearTimeout(v.current[e])}))}}),[]);var y=Math.ceil(t.length/5),h=t.slice(5*(b-1),5*b),E=(0,s.useCallback)((function(e,t,a){n((function(n){return n.map((function(n){if(n.id!==e)return n;var r=Object.assign({},n);return r[t]=a,"login_redirection"===t&&"0"!==a&&(r.custom_login_redirection=""),"logout_redirection"===t&&"0"!==a&&(r.custom_logout_redirection=""),r}))}));var r=e+"-"+t;v.current[r]&&clearTimeout(v.current[r]),v.current[r]=setTimeout((function(){delete v.current[r],window.dispatchEvent(new CustomEvent(C,{detail:{status:"saving",message:(0,l.__)("Saving changes...","buddyboss")}}));var n={};n[t]=a,g((function(t){var n=Object.assign({},t);return n[e]=!0,n})),(0,d.Ug)(e,n).then((function(e){e.success?window.dispatchEvent(new CustomEvent(C,{detail:{status:"success",message:(0,l.__)("Settings saved.","buddyboss")}})):window.dispatchEvent(new CustomEvent(C,{detail:{status:"error",message:e.data&&e.data.message||(0,l.__)("Failed to save.","buddyboss")}}))})).catch((function(){window.dispatchEvent(new CustomEvent(C,{detail:{status:"error",message:(0,l.__)("Failed to save.","buddyboss")}}))})).finally((function(){g((function(t){var n=Object.assign({},t);return delete n[e],n}))}))}),800)}),[]);if(r)return(0,o.createElement)("div",{className:"bb-profile-type-redirects__loading"},(0,o.createElement)(c.Spinner,null));if(!t.length){var w=(0,f.Pl)("admin.php?page=bb-settings&tab=members&panel=profile_types");return(0,o.createElement)("p",{className:"bb-profile-type-redirects__empty"},(0,l.__)("No profile types found. Create profile types under","buddyboss")," ",(0,o.createElement)("a",{href:w,onClick:function(e){e.defaultPrevented||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||0!==e.button||(e.preventDefault(),window.history.pushState({},"",w),window.dispatchEvent(new window.PopStateEvent("popstate")))}},(0,l.__)("Members Profile > Profile Types","buddyboss")),".")}return(0,o.createElement)("div",{className:"bb-profile-type-redirects"},h.map((function(e){var t=!!_[e.id],n={};return e.label_color&&"custom"===e.label_color.type&&(n.backgroundColor=e.label_color.background_color||"#1e1e1e",n.color=e.label_color.text_color||"#fff"),(0,o.createElement)("div",{key:e.id,className:"bb-profile-type-redirects__row"+(t?" bb-profile-type-redirects__row--saving":"")},(0,o.createElement)("div",{className:"bb-profile-type-redirects__type"},(0,o.createElement)("span",{className:"bb-profile-type-redirects__badge",style:n},(0,L.decodeEntities)(e.post_title||e.key))),(0,o.createElement)("div",{className:"bb-profile-type-redirects__fields"},(0,o.createElement)("div",{className:"bb-profile-type-redirects__field"},(0,o.createElement)("label",{className:"bb-profile-type-redirects__field-label"},(0,l.__)("After Login","buddyboss")),(0,o.createElement)(q.x,{key:"login-"+e.id,value:e.login_redirection||"",onChange:function(t){E(e.id,"login_redirection",t)},asyncAction:"bb_admin_search_published_pages",placeholder:(0,l.__)("Default","buddyboss"),staticOptions:Y}),"0"===e.login_redirection&&(0,o.createElement)(c.TextControl,{label:(0,l.__)("Custom URL","buddyboss"),hideLabelFromVision:!0,value:e.custom_login_redirection||"",onChange:function(t){E(e.id,"custom_login_redirection",t)},placeholder:(0,l.__)("Paste URL","buddyboss"),type:"url",__nextHasNoMarginBottom:!0})),(0,o.createElement)("div",{className:"bb-profile-type-redirects__field"},(0,o.createElement)("label",{className:"bb-profile-type-redirects__field-label"},(0,l.__)("After Logout","buddyboss")),(0,o.createElement)(q.x,{key:"logout-"+e.id,value:e.logout_redirection||"",onChange:function(t){E(e.id,"logout_redirection",t)},asyncAction:"bb_admin_search_published_pages",placeholder:(0,l.__)("Default","buddyboss"),staticOptions:Y}),"0"===e.logout_redirection&&(0,o.createElement)(c.TextControl,{label:(0,l.__)("Custom URL","buddyboss"),hideLabelFromVision:!0,value:e.custom_logout_redirection||"",onChange:function(t){E(e.id,"custom_logout_redirection",t)},placeholder:(0,l.__)("Paste URL","buddyboss"),type:"url",__nextHasNoMarginBottom:!0}))))})),y>1&&(0,o.createElement)("div",{className:"bb-profile-type-redirects__pagination"},(0,o.createElement)("button",{type:"button",className:"bb-profile-type-redirects__page-btn",disabled:1===b,onClick:function(){m(Math.max(1,b-1))}},"‹"),(0,$.m)(b,y).map((function(e,t){return"..."===e?(0,o.createElement)("span",{key:"ellipsis-"+t,className:"bb-profile-type-redirects__page-ellipsis"},"…"):(0,o.createElement)("button",{key:e,type:"button",className:"bb-profile-type-redirects__page-btn"+(e===b?" bb-profile-type-redirects__page-btn--active":""),onClick:function(){m(e)}},e)})),(0,o.createElement)("button",{type:"button",className:"bb-profile-type-redirects__page-btn",disabled:b===y,onClick:function(){m(Math.min(y,b+1))}},"›")))}function Z({field:e,value:t,onChange:n}){var a=e.access_control_data||{},r=wp.hooks.applyFilters("bb.accessControl.types",a.types||[],e),i=!!e.threaded,u=function(e){return!!(e&&e.sub_types&&e.sub_types.items&&e.sub_types.items.length>0)},b=!(!t||"object"!=typeof t||t["access-control-type"]),[m,p]=(0,s.useState)((function(){return t&&t["access-control-type"]?t["access-control-type"]:t&&"object"==typeof t?"":a.current_type||""})),[_,g]=(0,s.useState)((function(){var e=t&&t["access-control-type"];if(e)for(var n=0;n0&&(0,o.createElement)("div",{className:"bb-access-control-field__toggle-list"+(i?" bb-access-control-field__toggle-list--threaded":"")},v.map((function(t){var a=String(t.value),r=-1!==w.indexOf(a),s=i?D[a]||{mode:"all",specific:[]}:null,d=e.threaded_sub_label?(0,L.decodeEntities)(e.threaded_sub_label):"",u=(0,o.createElement)(o.Fragment,null,(0,o.createElement)("span",{className:"bb-access-control-field__option-label"},(0,L.decodeEntities)(t.label)),d&&(0,o.createElement)("span",{className:"bb-access-control-field__option-suffix"}," "+d));return(0,o.createElement)("div",{key:a,className:"bb-access-control-field__toggle-item"+(i&&r?" bb-access-control-field__toggle-item--active":"")},(0,o.createElement)("div",{className:"bb-access-control-field__toggle-row"},(0,o.createElement)(c.ToggleControl,{label:i?u:(0,L.decodeEntities)(t.label),checked:r,onChange:function(e){!function(e,t){var a=t?w.concat([e]):w.filter((function(t){return t!==e}));N(a);var r=Object.assign({},D);i&&(t?r[e]={mode:"all",specific:[]}:delete r[e],I(r)),n(R(m,_,a,r))}(a,e)},__nextHasNoMarginBottom:!0}),i&&function(t,n,a){return(0,o.createElement)("div",{className:"bb-access-control-field__threaded-radio"},(0,o.createElement)("label",{className:"bb-access-control-field__threaded-radio-option"},(0,o.createElement)("input",{type:"radio",name:"ac-mode-"+e.name+"-"+t,value:"all",checked:"all"===n.mode,disabled:!a,onChange:function(){P(t,"all")}}),(0,l.__)("All","buddyboss")),(0,o.createElement)("label",{className:"bb-access-control-field__threaded-radio-option"},(0,o.createElement)("input",{type:"radio",name:"ac-mode-"+e.name+"-"+t,value:"specific",checked:"specific"===n.mode,disabled:!a,onChange:function(){P(t,"specific")}}),(0,l.__)("Specific","buddyboss")))}(a,s,r)),i&&r&&"specific"===s.mode&&function(e,t){var a=h&&h.length?h:v;return(0,o.createElement)("div",{className:"bb-access-control-field__threaded-checkboxes"},a.map((function(a){var r=String(a.value);return(0,o.createElement)(c.CheckboxControl,{key:r,className:"bb-access-control-field__threaded-checkbox",label:(0,L.decodeEntities)(a.label),checked:-1!==t.specific.indexOf(r),onChange:function(t){!function(e,t,a){var r,i=Object.assign({},D),o=i[e]?.specific||[];r=a?o.concat([t]):o.filter((function(e){return e!==t})),i[e]={mode:"specific",specific:r},I(i),n(R(m,_,w,i))}(e,r,t)}})})))}(a,s))}))),a.notice&&(0,o.createElement)("div",{className:"bb-access-control-field__notice"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-info"}),(0,o.createElement)("span",null,a.notice)))}const K=e=>{const{field:t,onChange:n}=e,a=e.value||{},r=t.notification_groups||[];return r.length?(0,o.createElement)("div",{className:"bb-notification-types"},r.map((e=>e.fields&&e.fields.length?(0,o.createElement)("div",{key:e.key,className:"bb-notification-types__group"},e.admin_label&&(0,o.createElement)("div",{className:"bb-notification-types__group-header"},e.admin_label),(0,o.createElement)("div",{className:"bb-notification-types__rows"},e.fields.map((e=>{const t=(e=>a[e.key]&&void 0!==a[e.key].main?"yes"===a[e.key].main:e.checked)(e),r=e.sub_types||{},i=Object.keys(r).filter((e=>r[e]&&r[e].is_render));return(0,o.createElement)("div",{key:e.key,className:"bb-notification-types__row"+(t?"":" bb-notification-types__row--disabled"),"aria-disabled":t?void 0:"true"},(0,o.createElement)("div",{className:"bb-notification-types__toggle"},(0,o.createElement)(c.ToggleControl,{label:(0,L.decodeEntities)(e.label),checked:t,onChange:t=>{e.read_only||((e,t)=>{const r=Object.assign({},a);r[e]||(r[e]={}),r[e]=Object.assign({},r[e],{main:t?"yes":"no"}),n(r)})(e.key,t)},disabled:e.read_only,__nextHasNoMarginBottom:!0}),e.tooltip&&(0,o.createElement)("span",{className:"bb-notification-types__tooltip",title:(0,L.decodeEntities)(e.tooltip)},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-info"}))),(0,o.createElement)("div",{className:"bb-notification-types__sub-types"},i.map((i=>{const s=r[i],l=((e,t)=>a[e.key]&&void 0!==a[e.key][t]?"yes"===a[e.key][t]:!(!e.sub_types||!e.sub_types[t])&&"yes"===e.sub_types[t].is_checked)(e,i),d=((e,t,n)=>!n||!(!e.sub_types||!e.sub_types[t])&&e.sub_types[t].disabled)(e,i,t);return(0,o.createElement)("div",{key:i,className:"bb-notification-types__sub-type"+(d?" bb-notification-types__sub-type--disabled":"")},(0,o.createElement)(c.CheckboxControl,{label:(0,L.decodeEntities)(s.label),checked:l,onChange:t=>{e.read_only||((e,t,r)=>{const i=Object.assign({},a);i[e]||(i[e]={}),i[e]=Object.assign({},i[e]),i[e][t]=r?"yes":"no",n(i)})(e.key,i,t)},disabled:d||e.read_only,__nextHasNoMarginBottom:!0}))}))),(0,o.createElement)("div",{className:"bb-notification-types__email-template"},(e=>{if(!e)return null;const t=!e.has_templates||e.missing;let n,a;e.has_templates?e.missing?(a=e.count-(e.existing_count||0),n=a>1?(0,l.__)("Add Email Templates","buddyboss"):(0,l.__)("Add Email Template","buddyboss")):n=e.count>1?(0,l.__)("Email Templates","buddyboss"):(0,l.__)("Email Template","buddyboss"):n=(0,l.__)("Add Email Template","buddyboss");let r="bb-notification-types__email-link";return t&&(r+=" bb-notification-types__email-link--missing"),(0,o.createElement)("a",{href:(0,f.Pl)(e.url||"#"),className:r,target:"_blank",rel:"noopener noreferrer"},n)})(e.email_template)))})))):null))):(0,o.createElement)("p",{className:"bb-notification-types__empty"},(0,l.__)("No notification types registered.","buddyboss"))};var X=i(9236);function Q({field:e,value:t,onChange:n,disabled:a,sanitizedDescription:r}){var i=t&&"object"==typeof t&&!Array.isArray(t),s=i?t:{},d=function(e){return i?!!s[e]&&"0"!==s[e]&&0!==s[e]:Array.isArray(t)&&t.includes(e)},u={};(e.options||[]).forEach((function(e){u[e.value]=e}));var b=Object.keys(s),m=[];b.forEach((function(e){u[e]&&m.push(u[e])})),(e.options||[]).forEach((function(e){b.includes(e.value)||m.push(e)}));var p=["bb_group_nav_order","bb_user_nav_order"].indexOf(e.name)>=0,f=function(e,t){var n=!!e.badge_label,a=p&&!t;return n||a?(0,o.createElement)("span",{className:"bb-admin-settings-field__checkbox-list-label"},(0,o.createElement)("span",{className:"bb-admin-settings-field__checkbox-list-label-text"},e.label),n&&(0,o.createElement)("span",{className:"bb-admin-settings-field__checkbox-list-badge"},e.badge_label),a&&(0,o.createElement)("span",{className:"bb-admin-settings-field__checkbox-list-status-tag","aria-hidden":"true"},(0,l.__)("Hidden","buddyboss"))):e.label};return p&&0===m.length?(0,o.createElement)("div",{className:"bb-admin-empty-state"},(0,o.createElement)("p",{className:"bb-admin-empty-state__description"},(0,l.__)("There are no navigation items to order yet. Create a group first to populate this list.","buddyboss"))):(0,o.createElement)(X.JY,{onDragEnd:function(t){if(t.destination&&t.destination.index!==t.source.index){var a=Array.from(m),r=a.splice(t.source.index,1)[0];a.splice(t.destination.index,0,r);var i={};a.forEach((function(e){i[e.value]=void 0!==s[e.value]?"string"==typeof s[e.value]?parseInt(s[e.value],10):s[e.value]:0})),n(e.name,i)}}},e.description&&(0,o.createElement)("p",{className:"bb-admin-settings-form__field-head-description",dangerouslySetInnerHTML:{__html:r||""}}),(0,o.createElement)(X.gL,{droppableId:e.name},(t=>(0,o.createElement)("div",{ref:t.innerRef,...t.droppableProps,className:"bb-admin-settings-field__checkbox-list"},m.map(((t,r)=>(0,o.createElement)(X.sx,{key:t.value,draggableId:t.value,index:r},((r,i)=>(0,o.createElement)("div",{ref:r.innerRef,...r.draggableProps,...r.dragHandleProps,className:"bb-admin-settings-field__checkbox-list-item"+(i.isDragging?" is-dragging":"")},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-list"}),(0,o.createElement)(c.ToggleControl,{label:f(t,d(t.value)),checked:d(t.value),onChange:a=>{var r={};m.forEach((function(e){e.value===t.value?r[e.value]=a?1:0:r[e.value]=void 0!==s[e.value]?"string"==typeof s[e.value]?parseInt(s[e.value],10):s[e.value]:0})),n(e.name,r)},disabled:a||!!t.disabled,__nextHasNoMarginBottom:!0})))))),t.placeholder))))}function ee({action:e,slug:t,label:n,className:a,nonceKey:r,busyLabel:i}){const[c,d]=(0,s.useState)(!1),[u,b]=(0,s.useState)(""),m=(0,s.useRef)(null);return(0,s.useEffect)((function(){return function(){m.current&&m.current.abort()}}),[]),(0,o.createElement)(o.Fragment,null,(0,o.createElement)("button",{type:"button",className:a,onClick:()=>{if(c)return;const n=window.bbAdminData||{},a=n[r||"addonNonce"];if(!(t&&e&&a&&n.ajaxUrl))return void b((0,l.__)("This action is not available right now. Please reload the page and try again.","buddyboss"));d(!0),b("");const i=new FormData;i.append("action",e),i.append("_ajax_nonce",a),i.append("slug",t),i.append("extension_type","plugin");const o=new AbortController;m.current=o,fetch(n.ajaxUrl,{method:"POST",body:i,signal:o.signal}).then((function(e){return e.json()})).then((function(e){if(e&&e.success)return void window.location.reload();const t=e&&e.data&&e.data.message?e.data.message:(0,l.__)("Activation failed. Please try again.","buddyboss");b(t),d(!1)})).catch((function(e){e&&"AbortError"===e.name||(b((0,l.__)("Activation failed. Please try again.","buddyboss")),d(!1))}))},disabled:c,"aria-busy":c?"true":void 0},c?i||(0,l.__)("Activating…","buddyboss"):n),u&&(0,o.createElement)("p",{className:"bb-admin-empty-state__error",role:"alert"},u))}function te({imageUrl:e,originalFile:t,nonces:n,uploadConfig:a,ajaxUrl:r,onSave:i,onCancel:c}){var d=(0,s.useRef)(null),u=(0,s.useRef)(null),b=(0,s.useRef)(null),[m,p]=(0,s.useState)(!1),[f,_]=(0,s.useState)(""),[g,v]=(0,s.useState)(!1),[y,h]=(0,s.useState)({x:0,y:0,size:150}),[E,w]=(0,s.useState)({min:50,max:400}),N=(0,s.useRef)(!1),C=(0,s.useRef)({x:0,y:0,cropX:0,cropY:0}),x=(0,s.useRef)(y);(0,s.useEffect)((function(){x.current=y}),[y]);var k=400;(0,s.useEffect)((function(){return function(){b.current&&b.current.abort()}}),[]);var S=(0,s.useCallback)((function(){var e=d.current,t=u.current;if(e&&t&&g){var n=e.getContext("2d"),a=Math.min(k/t.naturalWidth,k/t.naturalHeight),r=t.naturalWidth*a,i=t.naturalHeight*a,o=(k-r)/2,s=(k-i)/2;n.clearRect(0,0,k,k),n.drawImage(t,o,s,r,i),n.fillStyle="rgba(0, 0, 0, 0.5)",n.fillRect(0,0,k,k),n.clearRect(y.x,y.y,y.size,y.size),n.save(),n.beginPath(),n.rect(y.x,y.y,y.size,y.size),n.clip(),n.drawImage(t,o,s,r,i),n.restore(),n.strokeStyle="#ffffff",n.lineWidth=2,n.strokeRect(y.x,y.y,y.size,y.size)}}),[y,g]);return(0,s.useEffect)((function(){S()}),[S]),(0,s.useEffect)((function(){var e=function(e){if(N.current){var t=d.current;if(t){var n=t.getBoundingClientRect(),a=k/n.width,r=k/n.height,i=(e.clientX-n.left)*a,o=(e.clientY-n.top)*r,s=i-C.current.x,l=o-C.current.y,c=x.current,u=Math.max(0,Math.min(k-c.size,C.current.cropX+s)),b=Math.max(0,Math.min(k-c.size,C.current.cropY+l));h({x:u,y:b,size:c.size})}}},t=function(){N.current=!1};return document.addEventListener("mousemove",e),document.addEventListener("mouseup",t),function(){document.removeEventListener("mousemove",e),document.removeEventListener("mouseup",t)}}),[]),(0,s.useEffect)((function(){var e=function(e){"Escape"!==e.key||m||c()};return document.addEventListener("keydown",e),function(){document.removeEventListener("keydown",e)}}),[m,c]),(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-overlay",role:"dialog","aria-modal":"true","aria-label":(0,l.__)("Upload Custom Avatar","buddyboss")},(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-modal"},(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-header"},(0,o.createElement)("h3",{className:"bb-admin-image-upload__crop-title"},(0,l.__)("Upload Custom Avatar","buddyboss")),(0,o.createElement)("button",{type:"button",className:"bb-admin-image-upload__crop-close",onClick:c,disabled:m,"aria-label":(0,l.__)("Close","buddyboss")},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-x","aria-hidden":"true"}))),(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-body"},(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-canvas-wrap"},(0,o.createElement)("img",{ref:u,src:e,crossOrigin:"anonymous",style:{display:"none"},onLoad:function(){var e=u.current;if(e){v(!0);var t=Math.min(k/e.naturalWidth,k/e.naturalHeight),n=e.naturalWidth*t,a=e.naturalHeight*t,r=Math.min(n,a),i=Math.round(.6*r),o=(k-n)/2,s=(k-a)/2,l=Math.max(50,Math.round(.15*r)),c=Math.round(r);w({min:l,max:c}),h({x:Math.round(o+(n-i)/2),y:Math.round(s+(a-i)/2),size:i})}},alt:""}),(0,o.createElement)("canvas",{ref:d,width:k,height:k,className:"bb-admin-image-upload__crop-canvas",onMouseDown:function(e){var t=d.current;if(t){var n=t.getBoundingClientRect(),a=k/n.width,r=k/n.height,i=(e.clientX-n.left)*a,o=(e.clientY-n.top)*r,s=x.current;i>=s.x&&i<=s.x+s.size&&o>=s.y&&o<=s.y+s.size&&(N.current=!0,C.current={x:i,y:o,cropX:s.x,cropY:s.y},e.preventDefault())}}})),g&&(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-resize"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-minus"}),(0,o.createElement)("input",{type:"range",className:"bb-admin-image-upload__crop-slider",min:E.min,max:E.max,value:y.size,onChange:function(e){var t=parseInt(e.target.value,10),n=x.current,a=u.current;if(a){var r=Math.min(k/a.naturalWidth,k/a.naturalHeight),i=a.naturalWidth*r,o=a.naturalHeight*r,s=(k-i)/2,l=(k-o)/2,c=n.x+n.size/2,d=n.y+n.size/2,b=t/2,m=Math.max(s,Math.min(s+i-t,c-b)),p=Math.max(l,Math.min(l+o-t,d-b));h({x:Math.round(m),y:Math.round(p),size:t})}}}),(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-plus"})),f&&(0,o.createElement)("p",{className:"bb-admin-image-upload__error",role:"alert"},f)),(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-footer"},(0,o.createElement)("button",{type:"button",className:"bb-admin-image-upload__btn bb-admin-image-upload__btn--cancel",onClick:c,disabled:m},(0,l.__)("Cancel","buddyboss")),(0,o.createElement)("button",{type:"button",className:"bb-admin-image-upload__btn bb-admin-image-upload__btn--upload",onClick:function(){var e=u.current;if(e){p(!0),_(""),b.current&&b.current.abort(),b.current=new AbortController;var o=Math.min(k/e.naturalWidth,k/e.naturalHeight),s=(k-e.naturalWidth*o)/2,c=(k-e.naturalHeight*o)/2,d=Math.max(0,Math.round((y.x-s)/o)),m=Math.max(0,Math.round((y.y-c)/o)),f=Math.round(y.size/o),g=f,v=new FormData;v.append("nonce",n.avatarCropstore||""),v.append("object",a.object),v.append("item_id",a.item_id),v.append("item_type",a.item_type||""),v.append("original_file",t),v.append("type","crop"),v.append("crop_x",d),v.append("crop_y",m),v.append("crop_w",f),v.append("crop_h",g),function(e,t,n,a){n.append("action","bp_avatar_set");var r={method:"POST",credentials:"same-origin",body:n};return a&&(r.signal=a),fetch(e,r).then((function(e){if(!e.ok)throw new Error("HTTP "+e.status);return e.json()}))}(r,0,v,b.current.signal).then((function(e){if(e.success&&e.data){var t=e.data.avatar||e.data.url||"";i(t)}else{var n=e.data&&e.data.message||(0,l.__)("Crop failed.","buddyboss");_(n),p(!1)}})).catch((function(e){"AbortError"!==e.name&&(_(e.message||(0,l.__)("Crop failed.","buddyboss")),p(!1))}))}},disabled:m||!g},m?(0,l.__)("Uploading...","buddyboss"):(0,l.__)("Crop & Upload","buddyboss")))))}var ne=700,ae=400,re=1950/450;function ie({imageUrl:e,basename:t,originalName:n,nonces:a,uploadConfig:r,ajaxUrl:i,onSave:c,onCancel:d}){var u=(0,s.useRef)(null),b=(0,s.useRef)(null),m=(0,s.useRef)(null),[p,f]=(0,s.useState)(!1),[_,g]=(0,s.useState)(""),[v,y]=(0,s.useState)(!1),[h,E]=(0,s.useState)({x:0,y:0,width:200,height:46}),[w,N]=(0,s.useState)({min:100,max:ne}),C=(0,s.useRef)(!1),x=(0,s.useRef)({x:0,y:0,cropX:0,cropY:0}),k=(0,s.useRef)(h);(0,s.useEffect)((function(){k.current=h}),[h]);var S=(0,s.useMemo)((function(){var e=r&&r.dimensions;return e&&e.width&&e.height?e.width/e.height:re}),[r]);(0,s.useEffect)((function(){return function(){m.current&&m.current.abort()}}),[]);var A=(0,s.useCallback)((function(){var e=b.current;if(!e||!e.naturalWidth||!e.naturalHeight)return{left:0,top:0,width:ne,height:ae,scale:1};var t=Math.min(ne/e.naturalWidth,ae/e.naturalHeight),n=e.naturalWidth*t,a=e.naturalHeight*t;return{left:(ne-n)/2,top:(ae-a)/2,width:n,height:a,scale:t}}),[]),D=(0,s.useCallback)((function(){var e=u.current,t=b.current;if(e&&t&&v){var n=e.getContext("2d"),a=A();n.clearRect(0,0,ne,ae),n.drawImage(t,a.left,a.top,a.width,a.height),n.fillStyle="rgba(0, 0, 0, 0.5)",n.fillRect(0,0,ne,ae),n.clearRect(h.x,h.y,h.width,h.height),n.save(),n.beginPath(),n.rect(h.x,h.y,h.width,h.height),n.clip(),n.drawImage(t,a.left,a.top,a.width,a.height),n.restore(),n.strokeStyle="#ffffff",n.lineWidth=2,n.strokeRect(h.x,h.y,h.width,h.height)}}),[h,v,A]);(0,s.useEffect)((function(){D()}),[D]);var I=(0,s.useRef)(null);return(0,s.useEffect)((function(){var e=function(e){if(C.current){var t=u.current;if(t){var n=t.getBoundingClientRect(),a=ne/n.width,r=ae/n.height,i=(e.clientX-n.left)*a,o=(e.clientY-n.top)*r,s=i-x.current.x,l=o-x.current.y,c=k.current,d=A(),b=d.left,m=d.top,p=d.left+d.width-c.width,f=d.top+d.height-c.height,_=Math.max(b,Math.min(p,x.current.cropX+s)),g=Math.max(m,Math.min(f,x.current.cropY+l));null!==I.current&&cancelAnimationFrame(I.current),I.current=requestAnimationFrame((function(){I.current=null,E({x:_,y:g,width:c.width,height:c.height})}))}}},t=function(){C.current=!1};return document.addEventListener("mousemove",e),document.addEventListener("mouseup",t),function(){document.removeEventListener("mousemove",e),document.removeEventListener("mouseup",t),null!==I.current&&(cancelAnimationFrame(I.current),I.current=null)}}),[A]),(0,s.useEffect)((function(){var e=function(e){"Escape"!==e.key||p||d()};return document.addEventListener("keydown",e),function(){document.removeEventListener("keydown",e)}}),[p,d]),(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-overlay",role:"dialog","aria-modal":"true","aria-label":(0,l.__)("Upload Custom Cover","buddyboss")},(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-modal"},(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-header"},(0,o.createElement)("h3",{className:"bb-admin-image-upload__crop-title"},(0,l.__)("Upload Custom Cover","buddyboss")),(0,o.createElement)("button",{type:"button",className:"bb-admin-image-upload__crop-close",onClick:d,disabled:p,"aria-label":(0,l.__)("Close","buddyboss")},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-x","aria-hidden":"true"}))),(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-body"},(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-canvas-wrap"},(0,o.createElement)("img",{ref:b,src:e,crossOrigin:"anonymous",style:{display:"none"},onLoad:function(){if(b.current){y(!0);var e=A(),t=Math.floor(e.height*S),n=Math.min(Math.floor(.8*e.width),t),a=Math.max(60,Math.floor(.2*Math.min(e.width,t))),r=Math.floor(Math.min(e.width,t));rr&&(n=r);var i=Math.round(n/S);N({min:a,max:r}),E({x:Math.round(e.left+(e.width-n)/2),y:Math.round(e.top+(e.height-i)/2),width:n,height:i})}},alt:""}),(0,o.createElement)("canvas",{ref:u,width:ne,height:ae,className:"bb-admin-image-upload__crop-canvas",onMouseDown:function(e){var t=u.current;if(t){var n=t.getBoundingClientRect(),a=ne/n.width,r=ae/n.height,i=(e.clientX-n.left)*a,o=(e.clientY-n.top)*r,s=k.current;i>=s.x&&i<=s.x+s.width&&o>=s.y&&o<=s.y+s.height&&(C.current=!0,x.current={x:i,y:o,cropX:s.x,cropY:s.y},e.preventDefault())}}})),v&&w.max>w.min&&(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-resize"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-minus"}),(0,o.createElement)("input",{type:"range",className:"bb-admin-image-upload__crop-slider",min:w.min,max:w.max,value:h.width,onChange:function(e){var t=parseInt(e.target.value,10);if(!(isNaN(t)||t<=0)){var n=k.current,a=A(),r=Math.round(t/S),i=n.x+n.width/2,o=n.y+n.height/2,s=Math.max(a.left,Math.min(a.left+a.width-t,i-t/2)),l=Math.max(a.top,Math.min(a.top+a.height-r,o-r/2));E({x:Math.round(s),y:Math.round(l),width:t,height:r})}}}),(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-plus"})),_&&(0,o.createElement)("p",{className:"bb-admin-image-upload__error",role:"alert"},_)),(0,o.createElement)("div",{className:"bb-admin-image-upload__crop-footer"},(0,o.createElement)("button",{type:"button",className:"bb-admin-image-upload__btn bb-admin-image-upload__btn--cancel",onClick:d,disabled:p},(0,l.__)("Cancel","buddyboss")),(0,o.createElement)("button",{type:"button",className:"bb-admin-image-upload__btn bb-admin-image-upload__btn--upload",onClick:function(){var e=b.current;if(e)if("user"===r.object||"group"===r.object){f(!0),g(""),m.current&&m.current.abort(),m.current=new AbortController;var o=A(),s=o.scale,d=Math.max(0,Math.round((h.x-o.left)/s)),u=Math.max(0,Math.round((h.y-o.top)/s)),p=Math.round(h.width/s),_=Math.round(h.height/s);d+p>e.naturalWidth&&(p=e.naturalWidth-d),u+_>e.naturalHeight&&(_=e.naturalHeight-u);var v=new FormData;v.append("nonce",a&&a.coverCropstore||""),v.append("object",r.object),v.append("basename",t),v.append("crop_x",d),v.append("crop_y",u),v.append("crop_w",p),v.append("crop_h",_),n&&v.append("original_name",n),function(e,t,n,a){n.append("action","bb_admin_cover_image_set");var r={method:"POST",credentials:"same-origin",body:n};return a&&(r.signal=a),fetch(e,r).then((function(e){if(!e.ok)throw new Error("HTTP "+e.status);if(-1===(e.headers.get("content-type")||"").indexOf("application/json"))throw new Error((0,l.__)("Unexpected server response.","buddyboss"));return e.json()}))}(i,0,v,m.current.signal).then((function(e){if(e.success&&e.data&&e.data.url)c(e.data.url);else{var t=e.data&&e.data.message||(0,l.__)("Crop failed.","buddyboss");g(t),f(!1)}})).catch((function(e){"AbortError"!==e.name&&(g(e.message||(0,l.__)("Crop failed.","buddyboss")),f(!1))}))}else g((0,l.__)("Upload configuration is invalid (missing object).","buddyboss"))},disabled:p||!v},p?(0,l.__)("Uploading…","buddyboss"):(0,l.__)("Crop & Upload","buddyboss")))))}var oe={avatar:!0,cover:!0};function se(e,t,n,a){n.append("action",t);var r={method:"POST",credentials:"same-origin",body:n};return a&&(r.signal=a),fetch(e,r).then((function(e){if(!e.ok)throw new Error("HTTP "+e.status);if(-1===(e.headers.get("content-type")||"").indexOf("application/json"))throw new Error((0,l.__)("Unexpected server response.","buddyboss"));return e.json()}))}function le({uploadConfig:e,uploadUrl:t,onUpload:n,onRemove:a,disabled:r}){var i=(0,s.useState)(t?"preview":"idle"),c=i[0],d=i[1],u=(0,s.useState)(t||""),b=u[0],m=u[1],_=(0,s.useState)(""),g=_[0],v=_[1],y=(0,s.useState)(null),h=y[0],E=y[1],w=(0,s.useRef)(null),N=(0,s.useRef)(null);(0,s.useEffect)((function(){t?(m(t),d("preview")):(m(""),d("idle"))}),[t]),(0,s.useEffect)((function(){return function(){N.current&&N.current.abort()}}),[]);var C="avatar"===e.type,x=window.bbAdminData&&window.bbAdminData.uploadNonces||{},k=window.bbAdminData&&window.bbAdminData.ajaxUrl||"/wp-admin/admin-ajax.php",S=oe[e.type]?e.type:"unknown",A=function(){w.current&&w.current.click()},D=(0,s.useCallback)((function(){E(null),d("idle")}),[]),I=(0,s.useCallback)((function(t){E(null),m(t),d("preview"),p("group"===e.object?"groups":"members"),n&&n(t)}),[n,e.object]),O="uploading"===c||"removing"===c,R=e.help_text||"",P=e.label||"";return(0,o.createElement)("div",{className:"bb-admin-image-upload bb-admin-image-upload--"+S},P&&(0,o.createElement)("p",{className:"bb-admin-image-upload__label"},P),("idle"===c||"uploading"===c)&&(0,o.createElement)("div",{className:"bb-admin-image-upload__placeholder-area"},(0,o.createElement)("div",{className:"bb-admin-image-upload__placeholder"},O?(0,o.createElement)("span",{className:"bb-admin-image-upload__spinner"}):(0,o.createElement)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"33",height:"28",viewBox:"0 0 33 28",fill:"none"},(0,o.createElement)("path",{d:"M30 0H2.5C1.83696 0 1.20107 0.263392 0.732233 0.732233C0.263392 1.20107 0 1.83696 0 2.5V25C0 25.663 0.263392 26.2989 0.732233 26.7678C1.20107 27.2366 1.83696 27.5 2.5 27.5H30C30.663 27.5 31.2989 27.2366 31.7678 26.7678C32.2366 26.2989 32.5 25.663 32.5 25V2.5C32.5 1.83696 32.2366 1.20107 31.7678 0.732233C31.2989 0.263392 30.663 0 30 0ZM30 2.5V18.5547L25.9266 14.4828C25.6944 14.2506 25.4188 14.0664 25.1154 13.9407C24.8121 13.8151 24.4869 13.7504 24.1586 13.7504C23.8302 13.7504 23.5051 13.8151 23.2018 13.9407C22.8984 14.0664 22.6228 14.2506 22.3906 14.4828L19.2656 17.6078L12.3906 10.7328C11.9218 10.2643 11.2862 10.0012 10.6234 10.0012C9.96068 10.0012 9.32504 10.2643 8.85625 10.7328L2.5 17.0891V2.5H30ZM2.5 20.625L10.625 12.5L23.125 25H2.5V20.625ZM30 25H26.6609L21.0359 19.375L24.1609 16.25L30 22.0906V25ZM18.75 9.375C18.75 9.00416 18.86 8.64165 19.066 8.33331C19.272 8.02496 19.5649 7.78464 19.9075 7.64273C20.2501 7.50081 20.6271 7.46368 20.9908 7.53603C21.3545 7.60837 21.6886 7.78695 21.9508 8.04917C22.213 8.3114 22.3916 8.64549 22.464 9.0092C22.5363 9.37292 22.4992 9.74992 22.3573 10.0925C22.2154 10.4351 21.975 10.728 21.6667 10.934C21.3584 11.14 20.9958 11.25 20.625 11.25C20.1277 11.25 19.6508 11.0525 19.2992 10.7008C18.9475 10.3492 18.75 9.87228 18.75 9.375Z",fill:"#666666"}))),(0,o.createElement)("div",{className:"bb-admin-image-upload__actions"},(0,o.createElement)("button",{type:"button",className:"bb-admin-image-upload__btn bb-admin-image-upload__btn--upload",onClick:A,disabled:r||O},!O&&(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-upload-simple"}),O?(0,l.__)("Uploading...","buddyboss"):(0,l.__)("Upload","buddyboss")))),"preview"===c&&b&&(0,o.createElement)("div",{className:"bb-admin-image-upload__preview-area"},(0,o.createElement)("div",{className:"bb-admin-image-upload__preview"},(0,o.createElement)("img",{src:(0,f.Pl)(b),alt:(0,l.__)("Uploaded image","buddyboss")})),(0,o.createElement)("div",{className:"bb-admin-image-upload__actions"},(0,o.createElement)("button",{type:"button",className:"bb-admin-image-upload__btn bb-admin-image-upload__btn--upload",onClick:A,disabled:r},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-upload-simple"}),(0,l.__)("Upload","buddyboss")),(0,o.createElement)("button",{type:"button",className:"bb-admin-image-upload__btn bb-admin-image-upload__btn--remove",onClick:function(){d("removing"),v(""),N.current&&N.current.abort(),N.current=new AbortController;var t,n=new FormData;if(n.append("object",e.object),n.append("item_id",e.item_id),n.append("item_type",e.item_type||""),C){var r="group"===e.object?x.avatarDeleteGroup:x.avatarDelete;n.append("nonce",r||""),t="bp_avatar_delete"}else n.append("nonce",x.coverDelete||""),t="bp_cover_image_delete";se(k,t,n,N.current.signal).then((function(t){if(t.success)m(""),d("idle"),p("group"===e.object?"groups":"members"),a&&a();else{var n=t.data&&t.data.message||(0,l.__)("Remove failed.","buddyboss");v(n),d("preview")}})).catch((function(e){"AbortError"!==e.name&&(v(e.message||(0,l.__)("Remove failed.","buddyboss")),d("preview"))}))},disabled:r},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-x"}),(0,l.__)("Remove","buddyboss")))),"removing"===c&&(0,o.createElement)("div",{className:"bb-admin-image-upload__placeholder-area"},(0,o.createElement)("div",{className:"bb-admin-image-upload__placeholder"},(0,o.createElement)("span",{className:"bb-admin-image-upload__spinner"})),(0,o.createElement)("div",{className:"bb-admin-image-upload__actions"},(0,o.createElement)("button",{type:"button",className:"bb-admin-image-upload__btn bb-admin-image-upload__btn--upload",disabled:!0},(0,l.__)("Removing...","buddyboss")))),"cropping"===c&&h&&C&&(0,o.createElement)(te,{imageUrl:h.imageUrl,originalFile:h.originalFile,nonces:x,uploadConfig:e,ajaxUrl:k,onSave:I,onCancel:D}),"cropping"===c&&h&&!C&&(0,o.createElement)(ie,{imageUrl:h.imageUrl,basename:h.basename,originalName:h.originalName||"",nonces:x,uploadConfig:e,ajaxUrl:k,onSave:I,onCancel:D}),(0,o.createElement)("input",{ref:w,type:"file",accept:"image/jpeg,image/png",className:"bb-admin-image-upload__file-input",style:{display:"none"},onChange:function(t){var n=t.target.files&&t.target.files[0];n&&(/^image\/(jpe?g|png)$/i.test(n.type)?n.size>10485760?v((0,l.__)("File size must be less than 10 MB.","buddyboss")):(v(""),d("uploading"),C?function(t){N.current&&N.current.abort(),N.current=new AbortController;var n=new FormData;n.append("file",t,t.name),n.append("_wpnonce",x.uploader||""),n.append("bp_params[object]",e.object),n.append("bp_params[item_id]",e.item_id),n.append("bp_params[item_type]",e.item_type||""),se(k,"bp_avatar_upload",n,N.current.signal).then((function(e){if(e.success&&e.data){var t=e.data.url||"";E({imageUrl:t,originalFile:t}),d("cropping")}else{var n=e.data&&e.data.message||(0,l.__)("Upload failed.","buddyboss");v(n),d("idle")}})).catch((function(e){"AbortError"!==e.name&&(v(e.message||(0,l.__)("Upload failed.","buddyboss")),d("idle"))}))}(n):function(t){N.current&&N.current.abort(),N.current=new AbortController;var n=new FormData;n.append("file",t,t.name),n.append("nonce",x.coverCropstore||""),n.append("object",e.object),se(k,"bb_admin_cover_image_upload_temp",n,N.current.signal).then((function(e){if(e.success&&e.data&&e.data.url&&e.data.basename)E({imageUrl:e.data.url,basename:e.data.basename,originalFile:e.data.url,originalName:e.data.original_name||""}),d("cropping");else{var t=e.data&&e.data.message||(0,l.__)("Upload failed.","buddyboss");v(t),d("idle")}})).catch((function(e){"AbortError"!==e.name&&(v(e.message||(0,l.__)("Upload failed.","buddyboss")),d("idle"))}))}(n),w.current&&(w.current.value="")):v((0,l.__)("Please select a JPG or PNG image.","buddyboss")))},tabIndex:-1,"aria-hidden":"true"}),R&&(0,o.createElement)("p",{className:"bb-admin-image-upload__help"},R),g&&(0,o.createElement)("p",{className:"bb-admin-image-upload__error",role:"alert"},g))}const ce=i.p+"images/cover-image.90ea6556.png";function de({alignment:e}){var t="bb-admin-settings-field__header-preview";return(0,o.createElement)("div",{className:t+" "+t+"--"+e},(0,o.createElement)("div",{className:t+"-cover"}),(0,o.createElement)("div",{className:t+"-content"},(0,o.createElement)("div",{className:t+"-avatar"},(0,o.createElement)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"22",height:"17",viewBox:"0 0 22 17",fill:"none"},(0,o.createElement)("path",{d:"M11 9C12.873 9 14.57 9.62 15.815 10.487C16.998 11.312 18 12.538 18 13.857C18 14.581 17.691 15.181 17.204 15.627C16.746 16.048 16.148 16.321 15.532 16.507C14.301 16.88 12.68 17 11 17C9.32 17 7.699 16.88 6.468 16.507C5.852 16.321 5.254 16.048 4.795 15.627C4.31 15.182 4 14.582 4 13.858C4 12.539 5.002 11.313 6.185 10.488C7.43 9.62 9.127 9 11 9ZM18 10C19.044 10 19.992 10.345 20.693 10.833C21.333 11.28 22 12.023 22 12.929C22 13.446 21.775 13.875 21.44 14.182C21.134 14.463 20.756 14.628 20.411 14.732C19.941 14.874 19.386 14.947 18.81 14.979C18.932 14.634 19 14.259 19 13.857C19 12.322 18.041 11.018 16.968 10.113C17.3069 10.0381 17.6529 10.0002 18 10ZM4 10C4.358 10.0013 4.702 10.039 5.032 10.113C3.96 11.018 3 12.322 3 13.857C3 14.259 3.068 14.634 3.19 14.979C2.614 14.947 2.06 14.874 1.589 14.732C1.244 14.628 0.866 14.463 0.559 14.182C0.383027 14.0244 0.242284 13.8314 0.145961 13.6156C0.0496383 13.3999 -9.78689e-05 13.1663 1.44582e-07 12.93C1.44582e-07 12.025 0.666 11.281 1.307 10.834C2.09986 10.2905 3.03871 9.9997 4 10ZM17.5 4C18.163 4 18.7989 4.26339 19.2678 4.73223C19.7366 5.20107 20 5.83696 20 6.5C20 7.16304 19.7366 7.79893 19.2678 8.26777C18.7989 8.73661 18.163 9 17.5 9C16.837 9 16.2011 8.73661 15.7322 8.26777C15.2634 7.79893 15 7.16304 15 6.5C15 5.83696 15.2634 5.20107 15.7322 4.73223C16.2011 4.26339 16.837 4 17.5 4ZM4.5 4C5.16304 4 5.79893 4.26339 6.26777 4.73223C6.73661 5.20107 7 5.83696 7 6.5C7 7.16304 6.73661 7.79893 6.26777 8.26777C5.79893 8.73661 5.16304 9 4.5 9C3.83696 9 3.20107 8.73661 2.73223 8.26777C2.26339 7.79893 2 7.16304 2 6.5C2 5.83696 2.26339 5.20107 2.73223 4.73223C3.20107 4.26339 3.83696 4 4.5 4ZM11 0C12.0609 0 13.0783 0.421427 13.8284 1.17157C14.5786 1.92172 15 2.93913 15 4C15 5.06087 14.5786 6.07828 13.8284 6.82843C13.0783 7.57857 12.0609 8 11 8C9.93913 8 8.92172 7.57857 8.17157 6.82843C7.42143 6.07828 7 5.06087 7 4C7 2.93913 7.42143 1.92172 8.17157 1.17157C8.92172 0.421427 9.93913 0 11 0Z",fill:"#999999"}))),(0,o.createElement)("div",{className:t+"-lines"},(0,o.createElement)("div",{className:t+"-line "+t+"-line--short"}),(0,o.createElement)("div",{className:t+"-line "+t+"-line--long"}))))}function ue({position:e}){var t="bb-admin-settings-field__notification-position";return(0,o.createElement)("div",{className:t+" "+t+"--"+e},(0,o.createElement)("div",{className:t+"-bar"}))}var be={},me={"cover-buddyboss":function(){return(0,o.createElement)("div",{className:"bb-admin-settings-field__image-radio-icon bb-admin-settings-field__image-radio-icon--buddyboss"},(0,o.createElement)("img",{src:ce,alt:""}))},"cover-none":function(){return(0,o.createElement)("div",{className:"bb-admin-settings-field__image-radio-icon bb-admin-settings-field__image-radio-icon--none"},(0,o.createElement)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 48 48",fill:"none"},(0,o.createElement)("path",{d:"M39.0918 35.908C39.5145 36.3307 39.7519 36.9039 39.7519 37.5017C39.7519 38.0995 39.5145 38.6728 39.0918 39.0955C38.6691 39.5182 38.0958 39.7556 37.498 39.7556C36.9003 39.7556 36.327 39.5182 35.9043 39.0955L23.9999 27.1873L12.0918 39.0917C11.6691 39.5144 11.0958 39.7519 10.498 39.7519C9.90027 39.7519 9.32698 39.5144 8.90429 39.0917C8.4816 38.669 8.24414 38.0957 8.24414 37.498C8.24414 36.9002 8.48161 36.3269 8.90429 35.9042L20.8124 23.9998L8.90804 12.0917C8.48535 11.669 8.24789 11.0957 8.24789 10.498C8.24789 9.90019 8.48535 9.3269 8.90804 8.90422C9.33073 8.48153 9.90402 8.24406 10.5018 8.24406C11.0996 8.24406 11.6729 8.48153 12.0955 8.90422L23.9999 20.8123L35.908 8.90234C36.3307 8.47965 36.904 8.24219 37.5018 8.24219C38.0996 8.24219 38.6729 8.47965 39.0955 8.90234C39.5182 9.32503 39.7557 9.89832 39.7557 10.4961C39.7557 11.0939 39.5182 11.6672 39.0955 12.0898L27.1874 23.9998L39.0918 35.908Z",fill:"#999999"})))},"cover-custom":function(){return(0,o.createElement)("div",{className:"bb-admin-settings-field__image-radio-icon bb-admin-settings-field__image-radio-icon--custom"},(0,o.createElement)("span",{className:"bb-icons-rl-gear-six"}))},"avatar-buddyboss":function(){return(0,o.createElement)("div",{className:"bb-admin-settings-field__image-radio-icon bb-admin-settings-field__image-radio-icon--avatar-group"},(0,o.createElement)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 48 48",fill:"none","aria-hidden":"true"},(0,o.createElement)("path",{d:"M24 26C29.5228 26 34 21.5228 34 16C34 10.4772 29.5228 6 24 6C18.4772 6 14 10.4772 14 16C14 21.5228 18.4772 26 24 26ZM24 30C13.954 30 4 34.5294 4 41V44H44V41C44 34.5294 34.046 30 24 30Z",fill:"#999999"})))},"avatar-name":function(){return(0,o.createElement)("div",{className:"bb-admin-settings-field__image-radio-icon bb-admin-settings-field__image-radio-icon--avatar-name"},(0,o.createElement)("span",{className:"bb-admin-settings-field__avatar-initials"},"BB"))},"avatar-custom":function(){return(0,o.createElement)("div",{className:"bb-admin-settings-field__image-radio-icon bb-admin-settings-field__image-radio-icon--custom"},(0,o.createElement)("span",{className:"bb-icons-rl-gear-six"}))},"header-left-group":function(){return(0,o.createElement)(de,{alignment:"left"})},"header-centered-group":function(){return(0,o.createElement)(de,{alignment:"centered"})},"header-left-profile":function(){return(0,o.createElement)(de,{alignment:"left"})},"header-centered-profile":function(){return(0,o.createElement)(de,{alignment:"centered"})},"notification-position-left":function(){return(0,o.createElement)(ue,{position:"left"})},"notification-position-right":function(){return(0,o.createElement)(ue,{position:"right"})}};function pe({field:e,value:t,onChange:n,disabled:a,descriptionHtml:r}){var[i,l]=(0,s.useState)(t),c=void 0!==be[e.name]?be[e.name]:e.upload_url||"",[d,u]=(0,s.useState)(c);(0,s.useEffect)((function(){l(t)}),[t]);var b=e.upload_config&&e.upload_config.conditional,m=b&&i===b.value;return(0,o.createElement)("div",{className:"bb-admin-settings-field__image-radio-wrapper"+(e.name?" bb-admin-settings-field__image-radio-wrapper--"+e.name:"")},(0,o.createElement)("div",{className:"bb-admin-settings-field__image-radio"},(e.options||[]).map((function(t){return(0,o.createElement)("button",{key:t.value,type:"button",className:"bb-admin-settings-field__image-radio-option"+(i===t.value?" bb-admin-settings-field__image-radio-option--selected":""),onClick:function(){var a;a=t.value,l(a),n(e.name,a)},disabled:a},(0,o.createElement)("div",{className:"bb-admin-settings-field__image-radio-preview"},me[t.image]?me[t.image]():!t.image||0!==t.image.indexOf("http")&&0!==t.image.indexOf("/")?null:(0,o.createElement)("img",{src:t.image,alt:t.label||"",className:"bb-admin-settings-field__image-radio-img"})),(0,o.createElement)("span",{className:"bb-admin-settings-field__image-radio-label"},t.label))}))),r&&(0,o.createElement)("p",{className:"bb-admin-settings-form__field-description bb-admin-settings-form__field-description--image-radio"+(m?" bb-admin-settings-field__image-radio--with-divider":""),dangerouslySetInnerHTML:{__html:r}}),m&&(0,o.createElement)(le,{uploadConfig:e.upload_config,uploadUrl:d,onUpload:function(t){be[e.name]=t,u(t)},onRemove:function(){be[e.name]="",u("")},disabled:a}))}function fe({field:e,values:t,onChange:n}){var a=e.fields||[];return(0,o.createElement)("div",{className:"bb-admin-settings-field__dimensions"},a.map(((e,r)=>{var i=void 0!==t[e.name]?t[e.name]:e.default;return(0,o.createElement)("div",{key:e.name,className:"bb-admin-settings-field__dimension-item"},(0,o.createElement)("label",{className:"bb-admin-settings-field__dimension-label"},e.label),(0,o.createElement)("div",{className:"bb-admin-settings-field__dimension-input-wrap"},(0,o.createElement)("input",{type:"number",value:i||"",onChange:t=>n(e.name,t.target.value),min:e.min,max:e.max,className:"bb-admin-settings-field__dimension-input"}),e.suffix&&(0,o.createElement)("span",{className:"bb-admin-settings-field__dimension-suffix"},e.suffix)),r=a&&(a=n+1)}}));var r="bb_vid_"+a,i=m.trim(),o=f.trim();if(o){var s={};Object.keys(h).forEach((function(e){var t=h[e];s[e]={extension:t.extension,mime_type:t.mime_type,description:t.description,is_default:t.is_default,is_active:void 0!==k[e]?k[e]:t.is_active,icon:t.icon||""}})),s[r]={extension:t,mime_type:o,description:i,is_default:0,is_active:1,icon:""},E(s);var c={label:i?t+" ("+i+")":t,value:r,is_default:0};N((function(e){return e.concat([c])})),n(e.name,s),S()}else v((0,l.__)("MIME type is required.","buddyboss"))}},disabled:!u.trim()||!f.trim()},(0,l.__)("Save","buddyboss")))))}const Ee={};var we=!(!window.bbAdminData||!window.bbAdminData.isReadyLaunch);function Ne(){return we?"bb-icons-rl bb-icons-rl-file":"bb-icon-l bb-icon-file"}function Ce(e){var t=(e||"").replace(".","").toLowerCase();return we?"bb-icons-rl "+({pdf:"bb-icons-rl-file-pdf",doc:"bb-icons-rl-file-doc",docx:"bb-icons-rl-file-doc",xls:"bb-icons-rl-file-xls",xlsx:"bb-icons-rl-file-xls",ppt:"bb-icons-rl-file-ppt",pptx:"bb-icons-rl-file-ppt",csv:"bb-icons-rl-file-csv",css:"bb-icons-rl-file-css",html:"bb-icons-rl-file-html",htm:"bb-icons-rl-file-html",jpg:"bb-icons-rl-file-jpg",jpeg:"bb-icons-rl-file-jpg",png:"bb-icons-rl-file-png",gif:"bb-icons-rl-file-image",svg:"bb-icons-rl-file-svg",zip:"bb-icons-rl-file-archive",rar:"bb-icons-rl-file-archive",gz:"bb-icons-rl-file-archive",tar:"bb-icons-rl-file-archive","7z":"bb-icons-rl-file-archive",mp3:"bb-icons-rl-file-audio",wav:"bb-icons-rl-file-audio",mp4:"bb-icons-rl-file-video",avi:"bb-icons-rl-file-video",txt:"bb-icons-rl-file-text",js:"bb-icons-rl-file-code",json:"bb-icons-rl-file-code",xml:"bb-icons-rl-file-code",php:"bb-icons-rl-file-code",py:"bb-icons-rl-file-code",cpp:"bb-icons-rl-file-cpp",c:"bb-icons-rl-file-c"}[t]||"bb-icons-rl-file"):"bb-icon-l "+({pdf:"bb-icon-file-pdf",doc:"bb-icon-file-doc",docx:"bb-icon-file-docx",xls:"bb-icon-file-xlsx",xlsx:"bb-icon-file-xlsx",ppt:"bb-icon-file-pptx",pptx:"bb-icon-file-pptx",csv:"bb-icon-file-csv",css:"bb-icon-file-css",html:"bb-icon-file-html",htm:"bb-icon-file-html",jpg:"bb-icon-file-png",jpeg:"bb-icon-file-png",png:"bb-icon-file-png",gif:"bb-icon-file-image",svg:"bb-icon-file-svg",zip:"bb-icon-file-zip",rar:"bb-icon-file-zip",gz:"bb-icon-file-zip",tar:"bb-icon-file-tar","7z":"bb-icon-file-zip",mp3:"bb-icon-file-mp3",wav:"bb-icon-file-audio",mp4:"bb-icon-file-video",avi:"bb-icon-file-video",txt:"bb-icon-file-txt",js:"bb-icon-file-code",json:"bb-icon-file-code",xml:"bb-icon-file-code",php:"bb-icon-file-code",py:"bb-icon-file-code",cpp:"bb-icon-file-code",c:"bb-icon-file-code"}[t]||"bb-icon-file")}function xe({field:e,value:t,onChange:n,disabled:a}){var r={};"object"==typeof t&&null!==t&&Object.keys(t).forEach((function(e){var n=t[e];"object"==typeof n&&null!==n&&void 0!==n.is_active?r[e]=n.is_active?1:0:r[e]=n?1:0}));var[i,d]=(0,s.useState)(!1),[u,b]=(0,s.useState)((function(){return e.name&&Ee[e.name]?Ee[e.name]:e.extension_data||{}})),m=(0,s.useRef)(null);(0,s.useEffect)((function(){if(e.extension_data){var t=JSON.stringify(e.extension_data);if(m.current!==t){if(m.current=t,e.name&&Ee[e.name]&&JSON.stringify(Ee[e.name])!==t)return;b(e.extension_data)}}}),[e.extension_data]),(0,s.useEffect)((function(){e.name&&(Ee[e.name]=u)}),[e.name,u]);var[p,f]=(0,s.useState)((function(){return Object.assign({},r)})),[_,g]=(0,s.useState)(!1),[v,y]=(0,s.useState)(""),[h,E]=(0,s.useState)(""),[w,N]=(0,s.useState)(""),[C,x]=(0,s.useState)("bb-icon-file"),[k,S]=(0,s.useState)(""),[A,D]=(0,s.useState)(!1),[I,O]=(0,s.useState)(null),[R,P]=(0,s.useState)(""),[M,B]=(0,s.useState)(""),[T,L]=(0,s.useState)(""),[j,F]=(0,s.useState)("bb-icon-file"),U=e.icon_options||[],[H,G]=(0,s.useState)(!1),[z,V]=(0,s.useState)(!1),W=(0,s.useRef)(null),q=(0,s.useRef)(null),$=_e(),[Y,J]=(0,s.useState)(!1);(0,s.useEffect)((function(){if(_||A)return document.addEventListener("keydown",e,!0),function(){document.removeEventListener("keydown",e,!0)};function e(e){"Escape"===e.key&&(e.stopPropagation(),e.preventDefault(),_?g(!1):A&&(D(!1),O(null)))}}),[_,A]),(0,s.useEffect)((function(){function e(e){W.current&&!W.current.contains(e.target)&&G(!1),q.current&&!q.current.contains(e.target)&&V(!1)}return document.addEventListener("mousedown",e),function(){document.removeEventListener("mousedown",e)}}),[]);var Z=function(){d(!1),J(!1)},K=function(){y(""),E(""),N(""),x("bb-icon-file"),S(""),G(!1),$.resetMimeState(),g(!1)},X=function(){D(!1),O(null),P(""),B(""),L(""),F("bb-icon-file"),V(!1)},Q=Object.keys(u),ee=[],te=[];Q.forEach((function(e){var t=u[e],n={key:e,extension:t.extension,description:t.description,mime_type:t.mime_type||"",is_default:t.is_default,icon:t.icon};t.is_default?ee.push(n):te.push(n)}));var ne=ee.concat(te);return(0,o.createElement)("div",{className:"bb-doc-extensions"},(0,o.createElement)("button",{type:"button",className:"bb-admin-settings-field__manage-btn",onClick:function(){f(Object.assign({},r)),J(!1),d(!0)},disabled:a},e.manage_icon&&(0,o.createElement)("i",{className:e.manage_icon}),(0,o.createElement)("span",null,e.manage_label||(0,l.__)("Manage","buddyboss"))),i&&(0,o.createElement)(c.Modal,{title:(0,l.__)("Manage File Extensions","buddyboss"),onRequestClose:Z,className:"bb-doc-extensions-modal bb-admin-settings-modal",overlayClassName:"bb-extension-modal-overlay",shouldCloseOnClickOutside:!1},(0,o.createElement)("div",{className:"bb-doc-extensions-modal__body"},(0,o.createElement)("div",{className:"bb-doc-extensions-modal__list"},ne.map((function(t){var a=t.key,r=1===p[a]||void 0===p[a]&&u[a]&&u[a].is_active,i=1===t.is_default;return(0,o.createElement)("div",{key:a,className:"bb-doc-extensions-modal__item"+(r?"":" bb-doc-extensions-modal__item--disabled")},(0,o.createElement)("div",{className:"bb-doc-extensions-modal__checkbox"},(0,o.createElement)(c.CheckboxControl,{checked:r,onChange:function(e){!function(e,t){f((function(n){var a=Object.assign({},n);return a[e]=t?1:0,a})),J(!0)}(a,e)}})),(0,o.createElement)("span",{className:"bb-doc-extensions-modal__ext-name"},t.extension),(0,o.createElement)("i",{className:"bb-doc-extensions-modal__ext-icon "+Ce(t.extension)}),(0,o.createElement)("span",{className:"bb-doc-extensions-modal__ext-desc"},t.description,t.mime_type&&(0,o.createElement)("span",{className:"bb-doc-extensions-modal__ext-mime"}," ("+t.mime_type+")")),!i&&(0,o.createElement)("div",{className:"bb-doc-extensions-modal__ext-actions"},(0,o.createElement)(c.DropdownMenu,{icon:(0,o.createElement)("i",{className:"bb-icons-rl-dots-three"}),label:(0,l.__)("More options","buddyboss")},(function(t){var r=t.onClose;return(0,o.createElement)(c.MenuGroup,{className:"bb_dropdown_menu_group"},(0,o.createElement)(c.MenuItem,{onClick:function(){!function(e){var t=u[e];if(t){var n=t.icon||"";if(!n&&t.extension&&U.length>0){var a=Ce(t.extension),r=U.find((function(e){return e.icon_class===a}));r&&(n=r.value)}O(e),P(t.extension||""),B(t.description||""),L(t.mime_type||""),F(n||"bb-icon-file"),D(!0)}}(a),r()}},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-note-pencil"}),(0,l.__)("Edit","buddyboss")),(0,o.createElement)(c.MenuItem,{isDestructive:!0,onClick:function(){!function(t){var a={};Object.keys(u).forEach((function(e){if(e!==t){var n=u[e];a[e]={extension:n.extension,mime_type:n.mime_type,description:n.description,is_default:n.is_default,is_active:void 0!==p[e]?p[e]:n.is_active,icon:n.icon||""}}})),b(a),f((function(e){var n=Object.assign({},e);return delete n[t],n})),n(e.name,a),J(!0)}(a),r()}},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-trash"}),(0,l.__)("Delete","buddyboss")))}))))}))),(0,o.createElement)("div",{className:"bb-doc-extensions-modal__add-btn-wrap"},(0,o.createElement)("button",{type:"button",className:"bb-doc-extensions-modal__add-btn",onClick:function(){g(!0)},disabled:a},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-plus"}),(0,o.createElement)("span",null,(0,l.__)("Add Extension","buddyboss"))))),(0,o.createElement)("div",{className:"bb-admin-settings-modal__footer"},(0,o.createElement)(c.Button,{variant:"secondary",onClick:Z},(0,l.__)("Cancel","buddyboss")),(0,o.createElement)(c.Button,{variant:"primary",onClick:function(){n(e.name,p),d(!1),J(!1)}},(0,l.__)("Save","buddyboss")))),i&&_&&(0,s.createPortal)((0,o.createElement)("div",{className:"bb-extension-modal-overlay bb-extension-modal-overlay--nested"},(0,o.createElement)("div",{className:"bb-extension-modal--nested",role:"dialog","aria-modal":"true","aria-label":(0,l.__)("Add New Extension","buddyboss")},(0,o.createElement)("div",{className:"bb-extension-modal--nested__header"},(0,o.createElement)("h1",null,(0,l.__)("Add New Extension","buddyboss")),(0,o.createElement)("button",{type:"button",className:"bb-extension-modal--nested__close",onClick:K,"aria-label":(0,l.__)("Close","buddyboss")},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-x"}))),(0,o.createElement)("div",{className:"bb-extension-modal__body"},k&&(0,o.createElement)("div",{className:"bb-extension-modal__error"},k),(0,o.createElement)("div",{className:"bb-extension-modal__field"},(0,o.createElement)("label",{className:"bb-extension-modal__label"},(0,l.__)("Extension","buddyboss")),(0,o.createElement)(c.TextControl,{value:v,onChange:function(e){y(e),S("")},placeholder:(0,l.__)("Enter an extension (e.g., .extension)","buddyboss"),__nextHasNoMarginBottom:!0})),(0,o.createElement)("div",{className:"bb-extension-modal__field"},(0,o.createElement)("label",{className:"bb-extension-modal__label"},(0,l.__)("Description","buddyboss")),(0,o.createElement)(c.TextareaControl,{value:h,onChange:E,placeholder:(0,l.__)("Enter a short description","buddyboss"),__nextHasNoMarginBottom:!0})),(0,o.createElement)("div",{className:"bb-extension-modal__field"},(0,o.createElement)("label",{className:"bb-extension-modal__label"},(0,l.__)("Icon","buddyboss")),(0,o.createElement)("div",{className:"bb-extension-modal__icon-select",ref:W},(0,o.createElement)("div",{className:"bb-extension-modal__icon-dropdown"+(H?" is-open":""),onClick:function(){G(!H)},role:"button",tabIndex:0,onKeyDown:function(e){"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),G(!H))}},(0,o.createElement)("i",{className:(U.find((function(e){return e.value===C}))||{}).icon_class||Ne()}),(0,o.createElement)("span",{className:"bb-extension-modal__icon-dropdown-label"},(U.find((function(e){return e.value===C}))||{}).label||(0,l.__)("Default","buddyboss")),(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-caret-down bb-extension-modal__icon-dropdown-chevron"})),H&&(0,o.createElement)("div",{className:"bb-extension-modal__icon-dropdown-list"},U.map((function(e){return(0,o.createElement)("div",{key:e.value,className:"bb-extension-modal__icon-dropdown-item"+(e.value===C?" is-selected":""),onClick:function(){x(e.value),G(!1)}},(0,o.createElement)("i",{className:e.icon_class}),(0,o.createElement)("span",null,e.label))}))))),(0,o.createElement)("div",{className:"bb-extension-modal__field"},(0,o.createElement)("label",{className:"bb-extension-modal__label"},(0,l.__)("MIME Type","buddyboss")),(0,o.createElement)("div",{className:"bb-extension-modal__mime-row"},(0,o.createElement)(c.TextControl,{value:w,onChange:function(e){N(e),S("")},placeholder:(0,l.__)("Enter MIME type","buddyboss"),__nextHasNoMarginBottom:!0}),(0,o.createElement)(c.Button,{variant:"tertiary",className:"bb-extension-modal__mime-checker-toggle",onClick:function(){$.setIsMimeCheckerOpen(!$.isMimeCheckerOpen),$.setMimeCheckerResult("")}},(0,l.__)("MIME Checker","buddyboss"))),!$.isMimeCheckerOpen&&!w.trim()&&(0,o.createElement)("p",{className:"bb-extension-modal__field-hint"},(0,l.__)('Not sure? Click "MIME Checker" to detect the correct type from a sample file.',"buddyboss"))),$.isMimeCheckerOpen&&(0,o.createElement)(ge,{mimeChecker:$,onUseMimeType:function(){A?L($.mimeCheckerResult):N($.mimeCheckerResult),$.handleCloseMimeChecker()}})),(0,o.createElement)("div",{className:"bb-admin-settings-modal__footer bb-extension-modal__footer"},(0,o.createElement)(c.Button,{variant:"secondary",onClick:K},(0,l.__)("Cancel","buddyboss")),(0,o.createElement)(c.Button,{variant:"primary",onClick:function(){var t=v.trim();if(t)if("."!==t.charAt(0)&&(t="."+t),Object.keys(u).some((function(e){return u[e].extension&&u[e].extension.toLowerCase()===t.toLowerCase()})))S((0,l.__)("This extension already exists.","buddyboss"));else{var a=0;Object.keys(u).forEach((function(e){var t=e.match(/bb_doc_(\d+)/);if(t){var n=parseInt(t[1],10);n>=a&&(a=n+1)}}));var r="bb_doc_"+a,i=h.trim(),o=w.trim();if(o){var s={};Object.keys(u).forEach((function(e){var t=u[e];s[e]={extension:t.extension,mime_type:t.mime_type,description:t.description,is_default:t.is_default,is_active:void 0!==p[e]?p[e]:t.is_active,icon:t.icon||""}})),s[r]={extension:t,mime_type:o,description:i,is_default:0,is_active:1,icon:C||"bb-icon-file"},b(s),f((function(e){var t=Object.assign({},e);return t[r]=1,t})),n(e.name,s),J(!0),K()}else S((0,l.__)("MIME type is required.","buddyboss"))}},disabled:!v.trim()||!w.trim()},(0,l.__)("Save","buddyboss"))))),document.body),i&&A&&I&&(0,s.createPortal)((0,o.createElement)("div",{className:"bb-extension-modal-overlay bb-extension-modal-overlay--nested"},(0,o.createElement)("div",{className:"bb-extension-modal--nested",role:"dialog","aria-modal":"true","aria-label":(0,l.__)("Edit Extension","buddyboss")},(0,o.createElement)("div",{className:"bb-extension-modal--nested__header"},(0,o.createElement)("h1",null,(0,l.__)("Edit Extension","buddyboss")),(0,o.createElement)("button",{type:"button",className:"bb-extension-modal--nested__close",onClick:X,"aria-label":(0,l.__)("Close","buddyboss")},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-x"}))),(0,o.createElement)("div",{className:"bb-extension-modal__body"},(0,o.createElement)("div",{className:"bb-extension-modal__field"},(0,o.createElement)("label",{className:"bb-extension-modal__label"},(0,l.__)("Extension","buddyboss")),(0,o.createElement)(c.TextControl,{value:R,onChange:P,__nextHasNoMarginBottom:!0})),(0,o.createElement)("div",{className:"bb-extension-modal__field"},(0,o.createElement)("label",{className:"bb-extension-modal__label"},(0,l.__)("Description","buddyboss")),(0,o.createElement)(c.TextControl,{value:M,onChange:B,__nextHasNoMarginBottom:!0})),(0,o.createElement)("div",{className:"bb-extension-modal__field"},(0,o.createElement)("label",{className:"bb-extension-modal__label"},(0,l.__)("Icon","buddyboss")),(0,o.createElement)("div",{className:"bb-extension-modal__icon-select",ref:q},(0,o.createElement)("div",{className:"bb-extension-modal__icon-dropdown"+(z?" is-open":""),onClick:function(){V(!z)},role:"button",tabIndex:0,onKeyDown:function(e){"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),V(!z))}},(0,o.createElement)("i",{className:(U.find((function(e){return e.value===j}))||{}).icon_class||Ne()}),(0,o.createElement)("span",{className:"bb-extension-modal__icon-dropdown-label"},(U.find((function(e){return e.value===j}))||{}).label||(0,l.__)("Default","buddyboss")),(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-caret-down bb-extension-modal__icon-dropdown-chevron"})),z&&(0,o.createElement)("div",{className:"bb-extension-modal__icon-dropdown-list"},U.map((function(e){return(0,o.createElement)("div",{key:e.value,className:"bb-extension-modal__icon-dropdown-item"+(e.value===j?" is-selected":""),onClick:function(){F(e.value),V(!1)}},(0,o.createElement)("i",{className:e.icon_class}),(0,o.createElement)("span",null,e.label))}))))),(0,o.createElement)("div",{className:"bb-extension-modal__field"},(0,o.createElement)("label",{className:"bb-extension-modal__label"},(0,l.__)("MIME Type","buddyboss")),(0,o.createElement)("div",{className:"bb-extension-modal__mime-row"},(0,o.createElement)(c.TextControl,{value:T,onChange:L,placeholder:(0,l.__)("Enter MIME type","buddyboss"),__nextHasNoMarginBottom:!0}),(0,o.createElement)(c.Button,{variant:"tertiary",className:"bb-extension-modal__mime-checker-toggle",onClick:function(){$.setIsMimeCheckerOpen(!$.isMimeCheckerOpen),$.setMimeCheckerResult("")}},(0,l.__)("MIME Checker","buddyboss"))),!$.isMimeCheckerOpen&&!T.trim()&&(0,o.createElement)("p",{className:"bb-extension-modal__field-hint"},(0,l.__)('Not sure? Click "MIME Checker" to detect the correct type from a sample file.',"buddyboss"))),$.isMimeCheckerOpen&&(0,o.createElement)(ge,{mimeChecker:$,onUseMimeType:function(){L($.mimeCheckerResult),$.handleCloseMimeChecker()}})),(0,o.createElement)("div",{className:"bb-admin-settings-modal__footer bb-extension-modal__footer"},(0,o.createElement)(c.Button,{variant:"secondary",onClick:X},(0,l.__)("Cancel","buddyboss")),(0,o.createElement)(c.Button,{variant:"primary",onClick:function(){if(I){var t=R.trim();if(t){"."!==t.charAt(0)&&(t="."+t);var a={};Object.keys(u).forEach((function(e){var n=u[e];a[e]=e===I?{extension:t,mime_type:T.trim()||n.mime_type,description:M.trim(),is_default:n.is_default,is_active:void 0!==p[e]?p[e]:n.is_active,icon:j||"bb-icon-file"}:{extension:n.extension,mime_type:n.mime_type,description:n.description,is_default:n.is_default,is_active:void 0!==p[e]?p[e]:n.is_active,icon:n.icon||""}})),b(a),n(e.name,a),J(!0),D(!1),O(null),P(""),B(""),L(""),F("bb-icon-file"),V(!1)}}},disabled:!R.trim()||!T.trim()},(0,l.__)("Save","buddyboss"))))),document.body))}function ke(e){var t=e.field,n=e.value,a=e.onChange,r=e.disabled,i=e.values,c=t.is_connected||!1,d=t.button_label||(0,l.__)("Connect","buddyboss"),u=t.button_only||!1,b=!!t.icon_only,m=t.icon||"",f=t.icon_label||t.button_label||(0,l.__)("Action","buddyboss"),_=(0,s.useRef)(null),g=(0,s.useRef)(null),v=(0,s.useState)(n||""),y=v[0],h=v[1],N=(0,s.useState)(d),C=N[0],x=N[1],k=(0,s.useState)(c),S=k[0],A=k[1],D=(0,s.useState)(!1),I=D[0],O=D[1],R=(0,s.useState)(""),P=R[0],M=R[1],B=(0,s.useState)(""),T=B[0],L=B[1];function j(){if(!I){g.current&&g.current.abort();var e=new AbortController;g.current=e,O(!0),M(""),L("");var n=t.ajax_action||"bb_media_giphy_connect",r=new FormData;r.append("action",n),r.append("nonce",window.bbAdminData.ajaxNonce),u&&Array.isArray(t.related_fields)&&i?t.related_fields.forEach((function(e){r.append(e,S?"":i[e]||"")})):(r.append("connect_action",S?"disconnect":"connect"),r.append("api_key",y)),fetch(window.bbAdminData.ajaxUrl,{method:"POST",credentials:"same-origin",body:r,signal:e.signal}).then((function(e){if(!e.ok)throw new Error(e.statusText||"Request failed");return e.json()})).then((function(e){if(O(!1),e.success){var n=e.data;if(A(n.is_connected),n.button_label&&x(n.button_label),p(),!n.is_connected&&S&&(u&&Array.isArray(t.related_fields)?t.related_fields.forEach((function(e){a(e,"")})):u||(h(""),a(t.name,""))),n.status){var r=new CustomEvent(E,{detail:{fieldName:t.name,status:n.status}});window.dispatchEvent(r)}if(n.updated_fields||n.field_options){var i=new CustomEvent(w,{detail:{fields:n.updated_fields||{},field_options:n.field_options||null,is_connected:n.is_connected}});window.dispatchEvent(i)}n.message&&n.has_warning&&L(n.message)}else M(e.data&&e.data.message||(0,l.__)("Connection failed.","buddyboss"))})).catch((function(e){e&&"AbortError"===e.name||(O(!1),M((0,l.__)("Connection failed. Please try again.","buddyboss")))}))}}(0,s.useEffect)((function(){h(n||"")}),[n]),(0,s.useEffect)((function(){A(t.is_connected||!1),x(t.button_label||(0,l.__)("Connect","buddyboss"))}),[t.is_connected,t.button_label]),(0,s.useEffect)((function(){return function(){g.current&&g.current.abort()}}),[]);var F=r||I;return u||S||y||(F=!0),(0,o.createElement)("div",{className:"bb-admin-settings-field__input-button"},(0,o.createElement)("div",{className:"bb-admin-settings-field__input-button-row"},!u&&(0,o.createElement)("div",{className:"bb-admin-settings-field__input-button-input"},(0,o.createElement)("input",{ref:_,type:"text",value:y,placeholder:t.placeholder||"",onChange:function(e){h(e.target.value),M(""),L("")},disabled:r||S,className:"bb-admin-settings-field__input-button-text"})),b?(0,o.createElement)("button",{type:"button",className:"bb-admin-settings-field__input-button-btn bb-admin-settings-field__input-button-btn--icon-only"+(I?" is-loading":""),onClick:j,disabled:F,"aria-label":f,title:f},(0,o.createElement)("i",{className:"bb-admin-settings-field__input-button-icon "+m+(I?" is-spinning":""),"aria-hidden":"true"})):(0,o.createElement)("button",{type:"button",className:"bb-admin-settings-field__input-button-btn"+(S?" bb-admin-settings-field__input-button-btn--connected":""),onClick:j,disabled:F},I?(0,l.__)("Saving...","buddyboss"):C)),P&&(0,o.createElement)("p",{className:"bb-admin-settings-field__input-button-error",role:"alert"},P),T&&(0,o.createElement)("p",{className:"bb-admin-settings-field__input-button-warning",role:"alert"},T))}var Se=[{value:"",label:(0,l.__)("Select Condition","buddyboss")},{value:"always_allow",label:(0,l.__)("Always Allow","buddyboss")},{value:"never_allow",label:(0,l.__)("Never Allow","buddyboss")},{value:"only_allow",label:(0,l.__)("Only Allow","buddyboss")}];function Ae({field:e,value:t,onChange:n,disabled:a}){var r=(0,s.useRef)(0),i=(0,s.useRef)(null),d=(0,s.useRef)(null);function u(e){return e._key?e:Object.assign({},e,{_key:"dr-"+ ++r.current})}function b(e,t){i.current&&clearTimeout(i.current),i.current=setTimeout((function(){d.current=t,n(e,t)}),800)}var m=Array.isArray(t)&&t.length>0?t.map(u):[],[p,f]=(0,s.useState)(m),_=(0,s.useRef)(null),g=(0,s.useRef)(null),[v,y]=(0,s.useState)(null);(0,s.useEffect)((function(){Array.isArray(t)&&(d.current&&d.current===t||null===d.current&&f(t.map(u)))}),[t]),(0,s.useEffect)((function(){return function(){i.current&&clearTimeout(i.current)}}),[]);var h=p.some((function(e){return"always_allow"===e.condition})),E=p.some((function(e){return"only_allow"===e.condition}));function w(t,n,a){var r=p.map((function(e,r){if(r!==t)return e;var i=Object.assign({},e);return i[n]=a,i}));f(r),b(e.name,r)}var N=(0,s.useCallback)((function(e){_.current=e}),[]),C=(0,s.useCallback)((function(e,t){e.preventDefault(),g.current=t,y(t)}),[]),x=(0,s.useCallback)((function(){var t=_.current,a=g.current;if(_.current=null,g.current=null,y(null),null!==t&&null!==a&&t!==a){var r=p.slice(),i=r.splice(t,1)[0];r.splice(a,0,i),f(r),n(e.name,r)}}),[p,e.name,n]),k=(0,s.useCallback)((function(){_.current=null,g.current=null,y(null)}),[]);return(0,o.createElement)("div",{className:"bb-domain-restrictions"},(0,o.createElement)("div",{className:"bb-domain-restrictions__rows"},p.map((function(t,n){return(0,o.createElement)("div",{key:t._key,className:"bb-domain-restrictions__row"+(v===n&&_.current!==n?" bb-domain-restrictions__row--drag-over":""),draggable:!a,onDragStart:function(){N(n)},onDragOver:function(e){C(e,n)},onDrop:x,onDragEnd:k},(0,o.createElement)("span",{className:"bb-domain-restrictions__drag-handle"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-list"})),(0,o.createElement)("div",{className:"bb-domain-restrictions__domain"},(0,o.createElement)(c.TextControl,{value:t.domain||"",onChange:function(e){w(n,"domain",e)},placeholder:(0,l.__)("Domain name","buddyboss"),disabled:a,__nextHasNoMarginBottom:!0})),(0,o.createElement)("span",{className:"bb-domain-restrictions__dot"}),(0,o.createElement)("div",{className:"bb-domain-restrictions__tld"},(0,o.createElement)(c.TextControl,{value:t.tld||"",onChange:function(e){w(n,"tld",e)},placeholder:(0,l.__)("Extension","buddyboss"),disabled:a,__nextHasNoMarginBottom:!0})),(0,o.createElement)("div",{className:"bb-domain-restrictions__condition"},(0,o.createElement)(c.SelectControl,{value:t.condition||"",options:(r=t.condition,Se.map((function(e){var t=!1;return"always_allow"===e.value&&E&&"always_allow"!==r&&(t=!0),"only_allow"===e.value&&h&&"only_allow"!==r&&(t=!0),{value:e.value,label:e.label,disabled:t}}))),onChange:function(e){w(n,"condition",e)},disabled:a,__nextHasNoMarginBottom:!0})),(0,o.createElement)("button",{type:"button",className:"bb-domain-restrictions__remove",onClick:function(){!function(t){var n=p.filter((function(e,n){return n!==t}));f(n),b(e.name,n)}(n)},disabled:a,"aria-label":(0,l.__)("Remove Rule","buddyboss")},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-x"})));var r}))),(0,o.createElement)(c.Button,{variant:"secondary",className:"bb-domain-restrictions__add",onClick:function(){var e=p.concat([u({domain:"",tld:"",condition:""})]);f(e)},disabled:a},(0,o.createElement)("i",{className:"bb-icons-rl-plus"}),(0,l.__)("Add Domain","buddyboss")))}var De=[{value:"",label:(0,l.__)("Select Condition","buddyboss")},{value:"always_allow",label:(0,l.__)("Always Allow","buddyboss")},{value:"never_allow",label:(0,l.__)("Never Allow","buddyboss")}];function Ie({field:e,value:t,onChange:n,disabled:a}){var r=(0,s.useRef)(0),i=(0,s.useRef)(null),d=(0,s.useRef)(null);function u(e){return e._key?e:Object.assign({},e,{_key:"er-"+ ++r.current})}function b(e,t){i.current&&clearTimeout(i.current),i.current=setTimeout((function(){d.current=t,n(e,t)}),800)}var m=Array.isArray(t)&&t.length>0?t.map(u):[],[p,f]=(0,s.useState)(m);function _(t,n,a){var r=p.map((function(e,r){if(r!==t)return e;var i=Object.assign({},e);return i[n]=a,i}));f(r),b(e.name,r)}return(0,s.useEffect)((function(){Array.isArray(t)&&(d.current&&d.current===t||null===d.current&&f(t.map(u)))}),[t]),(0,s.useEffect)((function(){return function(){i.current&&clearTimeout(i.current)}}),[]),(0,o.createElement)("div",{className:"bb-email-restrictions"},(0,o.createElement)("div",{className:"bb-email-restrictions__rows"},p.map((function(t,n){return(0,o.createElement)("div",{key:t._key,className:"bb-email-restrictions__row"},(0,o.createElement)("div",{className:"bb-email-restrictions__address"},(0,o.createElement)(c.TextControl,{type:"email",value:t.address||"",onChange:function(e){_(n,"address",e)},placeholder:(0,l.__)("Email address","buddyboss"),disabled:a,__nextHasNoMarginBottom:!0})),(0,o.createElement)("div",{className:"bb-email-restrictions__condition"},(0,o.createElement)(c.SelectControl,{value:t.condition||"",options:De,onChange:function(e){_(n,"condition",e)},disabled:a,__nextHasNoMarginBottom:!0})),(0,o.createElement)("button",{type:"button",className:"bb-email-restrictions__remove",onClick:function(){!function(t){var n=p.filter((function(e,n){return n!==t}));f(n),b(e.name,n)}(n)},disabled:a,"aria-label":(0,l.__)("Remove Rule","buddyboss")},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-x"})))}))),(0,o.createElement)(c.Button,{variant:"secondary",className:"bb-email-restrictions__add",onClick:function(){var e=p.concat([u({address:"",condition:""})]);f(e)},disabled:a},(0,o.createElement)("i",{className:"bb-icons-rl-plus"}),(0,l.__)("Add Email","buddyboss")))}function Oe(e){var t=e.field,n=e.value,a=e.onChange,r=e.disabled,i=(0,s.useState)(!1),c=i[0],d=i[1];return(0,o.createElement)("div",{className:"bb-admin-settings-field__password"},(0,o.createElement)("input",{type:c?"text":"password",name:t.name,id:"bb-field-"+t.name,autoComplete:"off",value:n||"",placeholder:t.placeholder||"","aria-label":t.label||t.name,onChange:function(e){a(t.name,e.target.value)},disabled:r,className:"bb-admin-settings-field__password-input"}),(0,o.createElement)("button",{type:"button",className:"bb-admin-settings-field__password-toggle"+(c?" bb-admin-settings-field__password-toggle--visible":""),onClick:function(){d(!c)},"aria-label":c?(0,l.__)("Hide value","buddyboss"):(0,l.__)("Show value","buddyboss"),tabIndex:0,disabled:r},c?(0,o.createElement)("i",{className:"bb-icons-rl-eye-slash"}):(0,o.createElement)("i",{className:"bb-icons-rl-eye"})))}function Re({field:e,values:t,disabled:n}){var[a,r]=(0,s.useState)(!1),[i,c]=(0,s.useState)(null),d=(0,s.useRef)(null),u=(0,s.useRef)(null),b=(0,s.useRef)(!1),m=function(n){var a=e.ajax_action||"";if(a){d.current&&d.current.abort();var i=new AbortController;d.current=i,r(!0),c(null);var o=new FormData;o.append("action",a),o.append("nonce",window.bbAdminData.ajaxNonce);var s=e.watch_field||"";s&&t&&void 0!==t[s]&&(o.append("watch_field",s),o.append("watch_value",t[s]));var b=function(){fetch(window.bbAdminData.ajaxUrl,{method:"POST",credentials:"same-origin",body:o,signal:i.signal}).then((function(e){return e.json()})).then((function(e){r(!1),e.success&&e.data?c({status:e.data.status||"info",message:e.data.message||""}):c({status:"warning",message:e.data&&e.data.message||(0,l.__)("Unable to perform check.","buddyboss")})})).catch((function(e){e&&"AbortError"===e.name||(r(!1),c({status:"warning",message:(0,l.__)("An error occurred while checking.","buddyboss")}))}))};u.current&&(clearTimeout(u.current),u.current=null),n?u.current=setTimeout(b,1500):b()}};(0,s.useEffect)((function(){return b.current||(b.current=!0,m(!1)),function(){u.current&&clearTimeout(u.current),d.current&&d.current.abort()}}),[]);var p=e.watch_field||"",_=p&&t?t[p]:void 0,g=(0,s.useRef)(_);return(0,s.useEffect)((function(){g.current!==_&&b.current&&(g.current=_,m(!0))}),[_]),(0,o.createElement)("div",{className:"bb-admin-status-check"},a&&(0,o.createElement)("div",{className:"bb-admin-status-check__loading"},(0,o.createElement)("span",{className:"bb-admin-status-check__spinner"}),(0,o.createElement)("span",null,(0,l.__)("Checking...","buddyboss"))),!a&&i&&i.message&&(0,o.createElement)("div",{className:"bb-admin-notice bb-admin-notice--"+i.status,dangerouslySetInnerHTML:{__html:(0,f.pn)(i.message)}}))}function Pe(e){return{id:e.id,url:e.url,alt:e.alt||"",title:e.title||""}}function Me({value:e,onChange:t,disabled:n,config:a}){var r=(0,s.useRef)(null),i=(0,s.useRef)(t);i.current=t;var c=a||{},d=c.library_type||"image",u=!!c.multiple,b=c.frame_title||(0,l.__)("Select or Upload Media","buddyboss"),m=c.frame_button_text||(0,l.__)("Use this media","buddyboss"),p=c.placeholder_icon||"plus",_=c.placeholder_variant||"compact",g=(0,s.useRef)({libraryType:d,allowMultiple:u,frameTitle:b,frameButton:m});g.current={libraryType:d,allowMultiple:u,frameTitle:b,frameButton:m};var v=(0,s.useRef)(null);function y(){var e=r.current;if(e){if("function"==typeof e.off&&e.off(),"function"==typeof e.close)try{e.close()}catch(e){}if("function"==typeof e.dispose)try{e.dispose()}catch(e){}r.current=null,v.current=null}}function h(){if(void 0!==window.wp&&window.wp.media){if(r.current&&v.current){var e=v.current;e.allowMultiple===g.current.allowMultiple&&e.libraryType===g.current.libraryType||y()}r.current?r.current.options&&(r.current.options.title=g.current.frameTitle,r.current.options.button&&(r.current.options.button.text=g.current.frameButton)):(r.current=window.wp.media({title:g.current.frameTitle,button:{text:g.current.frameButton},multiple:g.current.allowMultiple,library:{type:g.current.libraryType}}),v.current={allowMultiple:g.current.allowMultiple,libraryType:g.current.libraryType},r.current.on("select",(function(){var e=r.current.state().get("selection");if(g.current.allowMultiple){var t=[];e.each((function(e){t.push(Pe(e.toJSON()))})),i.current(t)}else{var n=e.first();n&&i.current(Pe(n.toJSON()))}}))),r.current.open()}else window.alert((0,l.__)("WordPress Media API is not available.","buddyboss"))}function E(){i.current(g.current.allowMultiple?[]:null)}(0,s.useEffect)((function(){return y}),[]);var w=null;!u&&e&&("string"==typeof e&&e?w={url:e,alt:"",title:""}:"object"==typeof e&&e.url&&(w=e));var N=null!==w,C=u&&Array.isArray(e)&&e.length>0,x=N||C,k="large"===_,S="bb-admin-media-picker"+(k?" bb-admin-media-picker--large":"");return(0,o.createElement)("div",{className:S},N&&(0,o.createElement)("div",{className:"bb-admin-media-picker__preview-area"},(0,o.createElement)("div",{className:"bb-admin-media-picker__preview"},(0,o.createElement)("img",{src:(0,f.Pl)(w.url),alt:w.alt||"",className:"bb-admin-media-picker__preview-image"})),(0,o.createElement)("div",{className:"bb-admin-media-picker__actions"},(0,o.createElement)("button",{type:"button",className:"bb-admin-media-picker__btn bb-admin-media-picker__btn--replace",onClick:h,disabled:n},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-upload-simple"}),(0,l.__)("Replace","buddyboss")),(0,o.createElement)("button",{type:"button",className:"bb-admin-media-picker__btn bb-admin-media-picker__btn--remove",onClick:E,disabled:n},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-x"}),(0,l.__)("Remove","buddyboss")))),C&&(0,o.createElement)("div",{className:"bb-admin-media-picker__multi-area"},(0,o.createElement)("ul",{className:"bb-admin-media-picker__multi-list"},e.map((function(e){return(0,o.createElement)("li",{key:e.id,className:"bb-admin-media-picker__multi-item"},(0,o.createElement)("img",{src:(0,f.Pl)(e.url),alt:e.alt||""}))}))),(0,o.createElement)("div",{className:"bb-admin-media-picker__actions"},(0,o.createElement)("button",{type:"button",className:"bb-admin-media-picker__btn bb-admin-media-picker__btn--replace",onClick:h,disabled:n},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-upload-simple"}),(0,l.__)("Replace selection","buddyboss")),(0,o.createElement)("button",{type:"button",className:"bb-admin-media-picker__btn bb-admin-media-picker__btn--remove",onClick:E,disabled:n},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-x"}),(0,l.__)("Clear","buddyboss")))),!x&&!k&&(0,o.createElement)("div",{className:"bb-admin-media-picker__placeholder-area"},(0,o.createElement)("button",{type:"button",className:"bb-admin-media-picker__placeholder",onClick:h,disabled:n,"aria-label":(0,l.__)("Select media","buddyboss")},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-"+p,"aria-hidden":"true"}))),!x&&k&&(0,o.createElement)("div",{className:"bb-admin-media-picker__placeholder-area bb-admin-media-picker__placeholder-area--large"},(0,o.createElement)("span",{className:"bb-admin-media-picker__placeholder bb-admin-media-picker__placeholder--large","aria-hidden":"true"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-image"})),(0,o.createElement)("button",{type:"button",className:"bb-admin-media-picker__upload-btn",onClick:h,disabled:n},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-upload-simple"}),(0,l.__)("Upload","buddyboss"))))}function Be(e){var t={};return e.forEach((function(e,n){t[e.id]={enabled:!!e.enabled,order:n,icon:e.icon||""}})),t}function Te({value:e,onChange:t,availableItems:n,disabled:a}){var r=(0,s.useMemo)((function(){return function(e,t){var n=t&&"object"==typeof t?t:{},a=e.map((function(e,t){var a=n[e.id]||{};return{id:e.id,label:e.label,icon:a.icon||e.icon||"",enabled:"boolean"!=typeof a.enabled||a.enabled,order:"number"==typeof a.order?a.order:t}}));return a.sort((function(e,t){return e.order-t.order})),a}(n||[],e)}),[n,e]);return r.length?(0,o.createElement)(X.JY,{onDragEnd:function(e){if(e.destination&&e.destination.index!==e.source.index){var n=Array.from(r),a=n.splice(e.source.index,1)[0];n.splice(e.destination.index,0,a),t(Be(n))}}},(0,o.createElement)(X.gL,{droppableId:"bb-admin-sortable-toggle-list"},(function(e){return(0,o.createElement)("ul",{className:"bb-admin-sortable-toggle-list",ref:e.innerRef,...e.droppableProps},r.map((function(e,n){return(0,o.createElement)(X.sx,{key:e.id,draggableId:e.id,index:n,isDragDisabled:!!a},(function(n,i){return(0,o.createElement)("li",{ref:n.innerRef,...n.draggableProps,className:"bb-admin-sortable-toggle-list__item"+(i.isDragging?" is-dragging":"")},(0,o.createElement)("span",{className:"bb-admin-sortable-toggle-list__handle",...n.dragHandleProps,"aria-label":(0,l.__)("Drag to reorder","buddyboss")},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-list","aria-hidden":"true"})),(0,o.createElement)("span",{className:"bb-admin-sortable-toggle-list__toggle"},(0,o.createElement)(c.ToggleControl,{checked:!!e.enabled,onChange:function(n){!function(e,n){var a=r.map((function(t){return t.id!==e?t:Object.assign({},t,{enabled:n})}));t(Be(a))}(e.id,n)},disabled:a,__nextHasNoMarginBottom:!0})),e.icon&&(0,o.createElement)("span",{className:"bb-admin-sortable-toggle-list__icon","aria-hidden":"true"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-"+e.icon})),(0,o.createElement)("span",{className:"bb-admin-sortable-toggle-list__label"},e.label))}))})),e.placeholder)}))):(0,o.createElement)("p",{className:"bb-admin-sortable-toggle-list__empty"},(0,l.__)("No items available.","buddyboss"))}function Le({value:e,onChange:t,disabled:n,config:a}){var r=Array.isArray(e)?e:[],i=a||{},d=i.add_label||(0,l.__)("Add New Link","buddyboss"),u=i.modal_title_add||(0,l.__)("Add Link","buddyboss"),b=i.modal_title_edit||(0,l.__)("Edit Link","buddyboss"),m=(0,s.useState)(null),p=m[0],_=m[1];function g(){_(null)}var v=!!(p&&(p.title||"").trim()&&(p.url||"").trim());return(0,o.createElement)("div",{className:"bb-admin-editable-link-list"},r.length>0&&(0,o.createElement)(X.JY,{onDragEnd:function(e){if(e.destination&&e.destination.index!==e.source.index){var n=Array.from(r),a=n.splice(e.source.index,1)[0];n.splice(e.destination.index,0,a),t(n)}}},(0,o.createElement)(X.gL,{droppableId:"bb-admin-editable-link-list"},(function(e){return(0,o.createElement)("ul",{className:"bb-admin-editable-link-list__list",ref:e.innerRef,...e.droppableProps},r.map((function(e,a){return(0,o.createElement)(X.sx,{key:e.id,draggableId:e.id,index:a,isDragDisabled:!!n},(function(a,i){return(0,o.createElement)("li",{ref:a.innerRef,...a.draggableProps,className:"bb-admin-editable-link-list__item"+(i.isDragging?" is-dragging":"")},(0,o.createElement)("span",{className:"bb-admin-editable-link-list__handle",...a.dragHandleProps,"aria-label":(0,l.__)("Drag to reorder","buddyboss")},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-list","aria-hidden":"true"})),(0,o.createElement)("span",{className:"bb-admin-editable-link-list__body"},(0,o.createElement)("span",{className:"bb-admin-editable-link-list__title-row"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-link bb-admin-editable-link-list__title-icon","aria-hidden":"true"}),(0,o.createElement)("span",{className:"bb-admin-editable-link-list__title"},e.title),(0,o.createElement)("span",{className:"bb-admin-editable-link-list__actions"},(0,o.createElement)("button",{type:"button",className:"bb-admin-editable-link-list__action-btn",onClick:function(){!function(e){_({mode:"edit",id:e.id,title:e.title||"",url:e.url||""})}(e)},disabled:n,"aria-label":(0,l.__)("Edit link","buddyboss")},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-note-pencil","aria-hidden":"true"})),(0,o.createElement)("button",{type:"button",className:"bb-admin-editable-link-list__action-btn bb-admin-editable-link-list__action-btn--delete",onClick:function(){var n,a;n=e.id,a=r.filter((function(e){return e.id!==n})),t(a)},disabled:n,"aria-label":(0,l.__)("Delete link","buddyboss")},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-trash","aria-hidden":"true"})))),(0,o.createElement)("a",{className:"bb-admin-editable-link-list__url",href:(0,f.Pl)(e.url),target:"_blank",rel:"noopener noreferrer"},e.url)))}))})),e.placeholder)}))),(0,o.createElement)(c.Button,{className:"bb-admin-editable-link-list__add",onClick:function(){_({mode:"add",id:"link_"+Date.now()+"_"+Math.random().toString(36).slice(2,7),title:"",url:""})},disabled:n},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-plus","aria-hidden":"true"}),d),p&&(0,o.createElement)(c.Modal,{title:"add"===p.mode?u:b,onRequestClose:g,className:"bb-admin-editable-link-list__modal bb-admin-settings-modal"},(0,o.createElement)("div",{className:"bb-admin-editable-link-list-modal__body bb-admin-settings-modal__body"},(0,o.createElement)(c.TextControl,{label:(0,l.__)("Title","buddyboss"),value:p.title,onChange:function(e){_(Object.assign({},p,{title:e}))},placeholder:(0,l.__)("Enter title","buddyboss"),__nextHasNoMarginBottom:!0}),(0,o.createElement)(c.TextControl,{label:(0,l.__)("URL","buddyboss"),type:"url",value:p.url,onChange:function(e){_(Object.assign({},p,{url:e}))},placeholder:(0,l.__)("Enter URL","buddyboss"),__nextHasNoMarginBottom:!0})),(0,o.createElement)("div",{className:"bb-admin-editable-link-list__modal-actions bb-admin-settings-modal__footer"},(0,o.createElement)(c.Button,{variant:"secondary",onClick:g},(0,l.__)("Cancel","buddyboss")),(0,o.createElement)(c.Button,{variant:"primary",onClick:function(){if(p){var e,n=(p.title||"").trim(),a=(p.url||"").trim();n&&a&&(e="add"===p.mode?r.concat({id:p.id,title:n,url:a,isEditing:!1}):r.map((function(e){return e.id!==p.id?e:Object.assign({},e,{title:n,url:a,isEditing:!1})})),t(e),g())}},disabled:!v},"add"===p.mode?(0,l.__)("Add Link","buddyboss"):(0,l.__)("Save","buddyboss")))))}function je(e){var t=e.field,n=e.value,a=e.values||{},r=e.onChange,i=e.disabled,d=!!n&&"0"!==n&&0!==n,u=a.bb_recaptcha_bypass_text||"",b=(0,s.useState)(u),m=b[0],p=b[1],_=(0,s.useState)(!1),g=_[0],v=_[1],y=(0,s.useRef)(null);(0,s.useEffect)((function(){p(a.bb_recaptcha_bypass_text||"")}),[a.bb_recaptcha_bypass_text]),(0,s.useEffect)((function(){return function(){y.current&&clearTimeout(y.current)}}),[]);var h=(window.bbAdminData&&window.bbAdminData.loginUrl?window.bbAdminData.loginUrl:window.location.origin+"/wp-login.php")+"?bypass_captcha="+(m||"xxUNIQUE_STRINGXS"),E=m.length>=6&&m.length<=10;return(0,o.createElement)("div",{className:"bb-admin-settings-field__recaptcha-bypass"},(0,o.createElement)("div",{className:"bb-admin-settings-field__recaptcha-bypass-row"},(0,o.createElement)(c.ToggleControl,{label:(0,l.__)("Allow bypass, enter a 6 to 10-character string to customize your URL","buddyboss"),checked:d,onChange:function(){var e;e=d?0:1,r(t.name,e)},disabled:i,__nextHasNoMarginBottom:!0}),(0,o.createElement)("input",{type:"text",value:m,onChange:function(e){var t=e.target.value;p(t),r("bb_recaptcha_bypass_text",t)},placeholder:"stringxs",minLength:6,maxLength:10,disabled:i||!d,className:"bb-admin-settings-field__recaptcha-bypass-text"})),(0,o.createElement)("p",{className:"bb-admin-settings-field__recaptcha-bypass-description"},(0,l.__)("The bypass URL enables you to bypass reCAPTCHA in case of issues. We recommend keeping the link below securely stored for accessing your site.","buddyboss")),d&&(0,o.createElement)("div",{className:"bb-admin-settings-field__recaptcha-bypass-url"+(E?"":" bb-admin-settings-field__recaptcha-bypass-url--invalid")},(0,o.createElement)("a",{href:(0,f.Pl)(h),className:"bb-admin-settings-field__recaptcha-bypass-link",target:"_blank",rel:"noopener noreferrer"},h),E&&(0,o.createElement)("button",{type:"button",className:"bb-admin-settings-field__recaptcha-bypass-copy",onClick:function(){E&&(navigator.clipboard&&navigator.clipboard.writeText&&navigator.clipboard.writeText(h),v(!0),y.current&&clearTimeout(y.current),y.current=setTimeout((function(){v(!1)}),2e3))},title:g?(0,l.__)("Copied","buddyboss"):(0,l.__)("Copy","buddyboss")},(0,o.createElement)("i",{className:g?"bb-icon-l bb-icon-check":"bb-icon-l bb-icon-copy"}))))}function Fe(e){const t=e.field,n=e.values||{},a=(e.disabled,t.is_connected||!1),r=t.related_fields||[],i=t.ajax_action||"",d=t.verify_config||{},u=d.modal_title||(0,l.__)("Verify Settings","buddyboss"),b=d.loading_message||(0,l.__)("Verifying credentials...","buddyboss"),m=d.loading_icon||"bb-icons-rl-cloud",f=d.success_icon||"bb-icons-rl-check-circle",_=d.error_icon||"bb-icons-rl-warning-circle",[g,v]=(0,s.useState)(a),[y,h]=(0,s.useState)(!1),[N,C]=(0,s.useState)("idle"),[x,k]=(0,s.useState)(""),S=(0,s.useRef)(null),A=(0,s.useRef)(null),D=(0,s.useRef)(a),I=(0,s.useRef)(null);if(null===I.current&&r.length>0){const e={};r.forEach((function(t){e[t]=n[t]||""})),I.current=e}(0,s.useEffect)((function(){v(t.is_connected||!1),D.current=t.is_connected||!1}),[t.is_connected]),(0,s.useEffect)((function(){return function(){S.current&&S.current.abort()}}),[]);const O=(0,s.useCallback)((function(){C("submitting"),wp.hooks.doAction("bb_admin_verify_field_phase_change",t,"submitting",n),S.current&&S.current.abort();const e=new AbortController;S.current=e;const a=window.bbAdminData?window.bbAdminData.ajaxUrl:"",o=window.bbAdminData?window.bbAdminData.ajaxNonce:"";let s=new FormData;s.append("action",i),s.append("nonce",o);const c=A.current||n;r.forEach((function(e){let t=c[e]||"";if(!A.current&&!t){const n=document.querySelector('input[name="'+e+'"], select[name="'+e+'"], textarea[name="'+e+'"]');n&&n.value&&(t=n.value)}s.append(e,t)})),s=wp.hooks.applyFilters("bb_admin_verify_field_before_ajax",s,t,c),fetch(a,{method:"POST",credentials:"same-origin",body:s,signal:e.signal}).then((function(e){return e.json()})).then((function(e){if(e.success){const a=e.data||{};C("success"),k(a.message||(0,l.__)("Verified successfully.","buddyboss"));const i=a.is_connected||!1;v(i),D.current=i;const o={},s=A.current||n;r.forEach((function(e){o[e]=s[e]||""})),I.current=o,A.current=null,p(),a.status&&window.dispatchEvent(new CustomEvent(E,{detail:{fieldName:t.name,status:a.status}})),(a.updated_fields||a.field_options)&&window.dispatchEvent(new CustomEvent(w,{detail:{fields:a.updated_fields||{},field_options:a.field_options||null,is_connected:i}})),wp.hooks.doAction("bb_admin_verify_field_phase_change",t,"success",a),wp.hooks.doAction("bb_admin_verify_field_success",t,a,n)}else{const a=e.data||{},r=a.message||(0,l.__)("Verification failed.","buddyboss");C("error"),k(r),a.status&&window.dispatchEvent(new CustomEvent(E,{detail:{fieldName:t.name,status:a.status}})),a.updated_fields&&window.dispatchEvent(new CustomEvent(w,{detail:{fields:a.updated_fields,is_connected:!1}})),wp.hooks.doAction("bb_admin_verify_field_phase_change",t,"error",a),wp.hooks.doAction("bb_admin_verify_field_error",t,a,n)}})).catch((function(e){if(e&&"AbortError"===e.name)return;const n=(0,l.__)("Connection failed. Please try again.","buddyboss");C("error"),k(n),wp.hooks.doAction("bb_admin_verify_field_phase_change",t,"error",{message:n})}))}),[i,t,n,r]),R=(0,s.useCallback)((function(){const e={};r.forEach((function(t){e[t]=""})),A.current=e,window.dispatchEvent(new CustomEvent(w,{detail:{fields:e}})),C("loading"),k(""),h(!0),wp.hooks.doAction("bb_admin_verify_field_phase_change",t,"disconnecting",n),O()}),[t,n,r,O]),P=(0,s.useCallback)((function(){C("loading"),k(""),h(!0),wp.hooks.doAction("bb_admin_verify_field_phase_change",t,"loading",n),wp.hooks.applyFilters("bb_admin_verify_field_should_auto_submit",!0,t,n)&&O()}),[t,n,O]),M=(0,s.useCallback)((function(){h(!1),C("idle"),wp.hooks.doAction("bb_admin_verify_field_phase_change",t,"idle",{})}),[t]),B=I.current&&r.some((function(e){return(n[e]||"")!==(I.current[e]||"")}));let T="hidden";D.current&&!B?T="disconnect":D.current&&!B||(T="connect");const L=wp.hooks.applyFilters("bb_admin_verify_field_button_visible","hidden"!==T,t,g,B,n),j=r.every((function(e){const t=document.querySelector('input[name="'+e+'"], select[name="'+e+'"], textarea[name="'+e+'"]');let a=t&&t.value||"";return t&&"SELECT"===t.tagName?a=(a||"").toString().trim():a||(a=n[e]||""),!!String(a).trim()})),F=wp.hooks.applyFilters("bb_admin_verify_field_button_disabled","connect"===T&&!j,t,j,n),U=wp.hooks.applyFilters("bb_admin_verify_field_button_label",t.button_label||(0,l.__)("Verify","buddyboss"),t,g),H=t.disconnect_label||(0,l.__)("Disconnect","buddyboss"),G="disconnect"===T?H:U,z=wp.hooks.applyFilters("bb_admin_verify_field_modal_title",u,t),V=wp.hooks.applyFilters("bb_admin_verify_field_modal_content",null,t,N,n,{submit:O,close:M,setPhase:C,setMessage:k});return(0,o.createElement)("div",{className:"bb-admin-verify-field"},L&&"disconnect"===T&&(0,o.createElement)("button",{type:"button",className:"bb-admin-verify-field__btn bb-admin-verify-field__btn--secondary",onClick:R,disabled:F},G),L&&"connect"===T&&(0,o.createElement)("button",{type:"button",className:"bb-admin-verify-field__btn bb-admin-verify-field__btn--primary",onClick:P,disabled:F},G),y&&(0,o.createElement)("div",{className:"bb-admin-verify-modal"},(0,o.createElement)("div",{className:"bb-admin-verify-modal__backdrop",onClick:M,role:"presentation"}),(0,o.createElement)("div",{className:"bb-admin-verify-modal__container",onClick:function(e){e.stopPropagation()},role:"dialog","aria-labelledby":"bb-admin-verify-modal-title"},(0,o.createElement)("div",{className:"bb-admin-verify-modal__header"},(0,o.createElement)("h2",{id:"bb-admin-verify-modal-title",className:"bb-admin-verify-modal__title"},z),(0,o.createElement)("button",{type:"button",className:"bb-admin-verify-modal__close",onClick:M,"aria-label":(0,l.__)("Close","buddyboss")},(0,o.createElement)("i",{className:"bb-icons-rl-x"}))),(0,o.createElement)("div",{className:"bb-admin-verify-modal__content"},V||(0,o.createElement)(o.Fragment,null,("loading"===N||"submitting"===N)&&(0,o.createElement)("div",{className:"bb-admin-verify-modal__status"},(0,o.createElement)("i",{className:m}),(0,o.createElement)("p",null,b," ",(0,o.createElement)(c.Spinner,null))),"success"===N&&(0,o.createElement)("div",{className:"bb-admin-verify-modal__status bb-admin-verify-modal__status--success"},(0,o.createElement)("i",{className:f}),(0,o.createElement)("p",null,x)),"error"===N&&(0,o.createElement)("div",{className:"bb-admin-verify-modal__status bb-admin-verify-modal__status--error"},(0,o.createElement)("i",{className:_}),(0,o.createElement)("p",null,x)))),(0,o.createElement)("div",{className:"bb-admin-verify-modal__footer"},("loading"===N||"ready"===N)&&(0,o.createElement)(o.Fragment,null,(0,o.createElement)("button",{type:"button",className:"bb-admin-verify-modal__btn bb-admin-verify-modal__btn--primary",onClick:O,disabled:"loading"===N},(0,l.__)("Submit","buddyboss")),(0,o.createElement)("button",{type:"button",className:"bb-admin-verify-modal__btn",onClick:M},(0,l.__)("Cancel","buddyboss"))),"submitting"===N&&(0,o.createElement)("button",{type:"button",className:"bb-admin-verify-modal__btn bb-admin-verify-modal__btn--primary",disabled:!0},(0,l.__)("Verifying...","buddyboss")),("success"===N||"error"===N)&&(0,o.createElement)("button",{type:"button",className:"bb-admin-verify-modal__btn bb-admin-verify-modal__btn--primary",onClick:M},(0,l.__)("OK","buddyboss"))))))}function Ue({field:e,values:t}){var n=e.preview_config||{},a=n.title_key||"buddyboss_seo_title",r=n.description_key||"buddyboss_seo_description",i=t&&t[a]?String(t[a]):"",s=t&&t[r]?String(t[r]):"",c=n.site_name||"",d=n.site_url||"",u=n.site_icon||"",b=i||(0,l.__)("Your SEO title will appear here","buddyboss"),m=s||(0,l.__)("Your SEO description will appear here in search results.","buddyboss"),p=c?c.charAt(0).toUpperCase():"B";return(0,o.createElement)("div",{className:"bb-admin-seo-preview"},(0,o.createElement)("div",{className:"bb-admin-seo-preview__site-row"},u?(0,o.createElement)("img",{className:"bb-admin-seo-preview__icon",src:(0,f.Pl)(u),alt:""}):(0,o.createElement)("span",{className:"bb-admin-seo-preview__icon bb-admin-seo-preview__icon--placeholder","aria-hidden":"true"},p),(0,o.createElement)("div",{className:"bb-admin-seo-preview__site-info"},c&&(0,o.createElement)("span",{className:"bb-admin-seo-preview__site-name"},c),d&&(0,o.createElement)("span",{className:"bb-admin-seo-preview__site-url"},d))),(0,o.createElement)("div",{className:"bb-admin-seo-preview__title"},b),(0,o.createElement)("div",{className:"bb-admin-seo-preview__description"},m))}function He(e,t){if(!e||!t)return"";var n=e[t];return n?"object"==typeof n&&n.url?String(n.url):String(n):""}function Ge({field:e,values:t}){var n,a=e.preview_config||{},r=a.title_key||"buddyboss_og_title",i=a.description_key||"buddyboss_og_description",s=a.image_key||"buddyboss_og_image",c=a.fallback_title_key||"buddyboss_seo_title",d=a.fallback_description_key||"buddyboss_seo_description",u=He(t,r)||He(t,c),b=He(t,i)||He(t,d),m=He(t,s),p=(n=a.site_url||"")?String(n).replace(/^https?:\/\//,"").replace(/\/$/,""):"",_=u||(0,l.__)("Your OG title will appear here","buddyboss"),g=b||(0,l.__)("Your OG description will appear here when this page is shared on social platforms.","buddyboss");return(0,o.createElement)("div",{className:"bb-admin-social-preview"},m&&(0,o.createElement)("div",{className:"bb-admin-social-preview__image"},(0,o.createElement)("img",{src:(0,f.Pl)(m),alt:""})),(0,o.createElement)("div",{className:"bb-admin-social-preview__body"},p&&(0,o.createElement)("span",{className:"bb-admin-social-preview__url"},p),(0,o.createElement)("span",{className:"bb-admin-social-preview__title"},_),(0,o.createElement)("span",{className:"bb-admin-social-preview__description"},g)))}function ze({field:e}){var t=Array.isArray(e&&e.tags)?e.tags:[];if(0===t.length)return null;var n=e.heading||(0,l.__)("Available Tags:","buddyboss");return(0,o.createElement)("div",{className:"bb-admin-tags-reference",role:"note"},(0,o.createElement)("p",{className:"bb-admin-tags-reference__heading"},n),(0,o.createElement)("ul",{className:"bb-admin-tags-reference__list"},t.map((function(e,t){return e&&e.tag?(0,o.createElement)("li",{key:e.tag+"-"+t,className:"bb-admin-tags-reference__item"},(0,o.createElement)("code",{className:"bb-admin-tags-reference__tag"},e.tag),e.description&&(0,o.createElement)("span",{className:"bb-admin-tags-reference__description"}," - "+e.description)):null}))))}function Ve({value:e,onChange:t,fallback:n="#3E34FF",disabled:a=!1}){var r=(0,s.useState)(!1),i=r[0],d=r[1],u=(0,s.useState)(e),b=u[0],m=u[1],p=e||n;function f(){d(!1)}return(0,o.createElement)("div",{className:"bb-admin-settings-color-picker"},(0,o.createElement)(c.Button,{className:"bb-admin-settings-color-picker__button",onClick:function(){a||(m(p),d(!i))},"aria-expanded":i,"aria-label":(0,l.__)("Select color","buddyboss"),disabled:a},(0,o.createElement)("span",{className:"bb-admin-settings-color-picker__swatch"},(0,o.createElement)(c.ColorIndicator,{colorValue:p})),(0,o.createElement)("span",{className:"bb-admin-settings-color-picker__value"},p)),i&&(0,o.createElement)(c.Popover,{className:"bb-admin-settings-color-picker__popover",onClose:f,position:"bottom left"},(0,o.createElement)("div",{className:"bb-admin-settings-color-picker__popover-content"},(0,o.createElement)(c.ColorPicker,{color:b||p,onChange:m,enableAlpha:!1,copyFormat:"hex"}),(0,o.createElement)("div",{className:"bb-admin-settings-color-picker__popover-footer"},(0,o.createElement)(c.Button,{className:"bb-admin-settings-color-picker__apply",onClick:function(){t(b||p),f()}},(0,l.__)("Apply","buddyboss"))))))}function We(e){const t=[];return Array.isArray(e)?(e.forEach((function(e){e.fetch_on_change&&e.fetch_on_change.fields&&e.fetch_on_change.ajax_action&&t.push(e),Array.isArray(e.children)&&t.push.apply(t,We(e.children))})),t):t}function qe(e,t){const[n,a]=(0,s.useState)({}),r=(0,s.useRef)({}),i=(0,s.useRef)({}),o=(0,s.useRef)({}),c=(0,s.useMemo)((function(){return We(e)}),[e]),d=(0,s.useMemo)((function(){return function(e){return e.map((function(e){return e.name+":"+(e.fetch_on_change.fields||[]).join(",")})).join("|")}(c)}),[c]);(0,s.useEffect)((function(){c.forEach((function(e){const n=e.name,a=e.fetch_on_change.fields||[];if(!r.current[n]){const e={};a.forEach((function(n){e[n]=t[n]||""})),r.current[n]=e}}))}),[d]);const u=(0,s.useCallback)((function(e,t){const n=e.fetch_on_change,o=e.name;r.current[o]=Object.assign({},t),i.current[o]&&i.current[o].abort();const s=new AbortController;i.current[o]=s,a((function(e){const t=Object.assign({},e);return t[o]={loading:!0,loadingText:n.loading_text||(0,l.__)("Loading...","buddyboss"),options:e[o]?e[o].options:null,disabled:!0},t})),n.disable_fields&&n.disable_fields.length>0&&n.disable_fields.forEach((function(e){window.dispatchEvent(new CustomEvent(N,{detail:{fields:[e],disabled:!0}}))}));const c=new FormData;c.append("action",n.ajax_action),c.append("nonce",window.bbAdminData.ajaxNonce),Object.keys(t).forEach((function(e){c.append(e,t[e])})),fetch(window.bbAdminData.ajaxUrl,{method:"POST",credentials:"same-origin",body:c,signal:s.signal}).then((function(e){return e.json()})).then((function(e){if(e.success&&e.data){const n=e.data;r.current[o]=Object.assign({},t),a((function(e){const t=Object.assign({},e);return t[o]={loading:!1,options:n.options||null,disabled:void 0!==n.disabled&&n.disabled,defaultValue:n.default_value||""},t}))}else{const t=e.data&&e.data.message||(0,l.__)("Failed to fetch data.","buddyboss");a((function(e){const n=Object.assign({},e);return n[o]={loading:!1,options:[{value:"",label:t}],disabled:!0},n}))}n.disable_fields&&n.disable_fields.length>0&&n.disable_fields.forEach((function(e){window.dispatchEvent(new CustomEvent(N,{detail:{fields:[e],disabled:!1}}))}))})).catch((function(e){e&&"AbortError"===e.name||(a((function(e){const t=Object.assign({},e);return t[o]={loading:!1,options:[{value:"",label:(0,l.__)("Connection error. Please try again.","buddyboss")}],disabled:!0},t})),n.disable_fields&&n.disable_fields.length>0&&n.disable_fields.forEach((function(e){window.dispatchEvent(new CustomEvent(N,{detail:{fields:[e],disabled:!1}}))})))}))}),[]);(0,s.useEffect)((function(){return c.forEach((function(e){const n=e.fetch_on_change,i=n.fields||[],s=n.require_all,l=n.debounce||500,c=e.name,d={};let b=!0;if(i.forEach((function(e){const n=t[e]||"";d[e]=n,n||(b=!1)})),s&&!b)return delete r.current[c],void a((function(e){if(!e[c]||!e[c].options)return e;const t=Object.assign({},e);return delete t[c],t}));const m=r.current[c]||{};i.some((function(e){return(d[e]||"")!==(m[e]||"")}))&&(o.current[c]&&clearTimeout(o.current[c]),o.current[c]=setTimeout((function(){u(e,d)}),l))})),function(){Object.keys(o.current).forEach((function(e){o.current[e]&&clearTimeout(o.current[e])}))}}),[t,c,u]),(0,s.useEffect)((function(){return function(){Object.keys(i.current).forEach((function(e){i.current[e]&&i.current[e].abort()}))}}),[]);const b=(0,s.useCallback)((function(e){return n[e]||null}),[n]);return(0,s.useMemo)((function(){return{getFieldOverrides:b}}),[b])}function $e(e,t){if(!e||!e.field)return!0;for(var n=function(e,t){return e&&"bbAdminData"===e.source?"undefined"!=typeof window&&window.bbAdminData?window.bbAdminData:{}:t||{}}(e,t),a=String(e.field).split("."),r=n,i=0;i(window.bbReactEmotionCallbacks||(window.bbReactEmotionCallbacks={}),window.bbReactEmotionCallbacks.updateEmotion=(e,t)=>{const n=a.current;if(!n||!e||"object"!=typeof e)return;const i={...e},o=!t;o&&void 0===i.is_emotion_active&&(i.is_emotion_active=!0);const s=o?`react_key_${Date.now()}_${1e9*Math.random()|0}`:i.id||`react_key_${Date.now()}_${1e9*Math.random()|0}`;o&&(i.id=s),n("reaction_items",(e=>{let t="object"==typeof e&&null!==e?{...e}:{};return 0===Object.keys(t).length&&Array.isArray(r.current)&&r.current.forEach((e=>{e&&null!=e.id&&(t[e.id]={...e})})),t[s]=i,t})),n("reaction_checks",(e=>{let t="object"==typeof e&&null!==e?{...e}:{};return 0===Object.keys(t).length&&Array.isArray(r.current)&&r.current.forEach((e=>{e&&null!=e.id&&(t[e.id]=e.is_emotion_active?"1":"")})),t[s]=i.is_emotion_active?"1":"",t})),n("bb_reaction_mode","emotions")},window.bbReactEmotionCallbacks.updateReactionButton=e=>{if(!e)return;const t=n.current,r="object"==typeof t?.bb_reactions_button&&null!==t.bb_reactions_button?{...t.bb_reactions_button}:{};r.icon=e,a.current("bb_reactions_button",r)},()=>{window.bbReactEmotionCallbacks&&(delete window.bbReactEmotionCallbacks.updateEmotion,delete window.bbReactEmotionCallbacks.updateReactionButton)})),[]),(0,s.useEffect)((()=>{const e=e=>{if(!(e.target&&e.target.closest&&e.target.closest("#bbpro_reaction_delete_confirmation .bb-pro-reaction-delete-emotion")))return;e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation();const t=null!=window.bbReactPendingDeleteEmotionId?String(window.bbReactPendingDeleteEmotionId):(()=>{const e=window.bp?.Reaction_Admin?.delete_emotion;return e&&(e.attr?e.attr("data-reaction-id"):e.get?.(0)?.getAttribute?.("data-reaction-id"))||null})();if(window.bbReactPendingDeleteEmotionId=null,window.jQuery&&(window.jQuery("#bbpro_reaction_delete_confirmation").css("display","none"),window.jQuery("body").removeClass("modal-open")),window.bp.Reaction_Admin.delete_emotion="",!t)return;const i=n.current;let o="object"==typeof i?.reaction_items&&null!==i.reaction_items?{...i.reaction_items}:{};0===Object.keys(o).length&&Array.isArray(r.current)&&r.current.forEach((e=>{e&&null!=e.id&&(o[e.id]={...e})}));let s="object"==typeof i?.reaction_checks&&null!==i.reaction_checks?{...i.reaction_checks}:{};0===Object.keys(s).length&&Array.isArray(r.current)&&r.current.forEach((e=>{e&&null!=e.id&&(s[e.id]=e.is_emotion_active?"1":"")})),delete o[t],delete s[t];const l=a.current;l&&(l("reaction_items",o),l("reaction_checks",s),l("bb_reaction_mode","emotions"))},t=e=>{e.target&&e.target.closest&&e.target.closest("#bbpro_reaction_delete_confirmation .bb-pro-reaction-cancel-delete-emotion")&&(window.bbReactPendingDeleteEmotionId=null)};return document.addEventListener("click",e,!0),document.addEventListener("click",t,!0),()=>{document.removeEventListener("click",e,!0),document.removeEventListener("click",t,!0)}}),[]),{defaultEmotionsRef:r}}(n,t),d=qe(e,t),u=(0,s.useRef)({}),b=(0,s.useRef)({});(0,s.useEffect)((()=>{e.forEach((e=>{if("select"!==e.type)return;const a=d.getFieldOverrides(e.name);a&&a.defaultValue?u.current[e.name]!==a.defaultValue&&(t[e.name]||(u.current[e.name]=a.defaultValue,n(e.name,a.defaultValue))):u.current[e.name]&&delete u.current[e.name]}))}),[d,t,e,n]);const[m,p]=(0,s.useState)(!1),[_,g]=(0,s.useState)(null),[v,h]=(0,s.useState)({isOpen:!1,message:"",fieldName:"",saveValue:0,title:"",confirmLabel:"",cancelLabel:"",isDestructive:!1}),E=(0,s.useMemo)((()=>{const t={};return e.forEach((e=>{e.description&&"string"==typeof e.description&&(t[e.name+"__desc"]=(0,f.pn)(e.description),/%(?:\d+\$)?s/.test(e.description)&&e.description_controls&&e.description_controls.length>0&&(t[e.name+"__parts"]=e.description.split(/%(?:\d+\$)?s/).map((function(e){return(0,f.pn)(e)})))),e.help_text&&(t[e.name+"__help"]=(0,f.pn)(e.help_text)),e.label_description&&"string"==typeof e.label_description&&(t[e.name+"__label_desc"]=(0,f.pn)(e.label_description)),e.empty_state_title&&"string"==typeof e.empty_state_title&&(t[e.name+"__empty_title"]=(0,f.pn)(e.empty_state_title)),e.option_descriptions&&"object"==typeof e.option_descriptions&&Object.keys(e.option_descriptions).forEach((function(n){t[e.name+"__optdesc__"+n]=(0,f.pn)(e.option_descriptions[n])}))})),t}),[e]),w=e=>!e.conditional||"disable"===e.conditional.action||Ye(e.conditional,t),N=e=>!(!e.conditional||"disable"!==e.conditional.action||Ye(e.conditional,t)),C=n=>{if(!n.parent_field)return!1;const a=t[n.parent_field],r=e.find((e=>e.name===n.parent_field));if("hidden"===r?.type)return!1;const i=!0===r?.invert_value;return void 0!==n.parent_value&&null!==n.parent_value?a!==n.parent_value:i?!!a:!a},x=(e,r=!1)=>{const s=void 0!==t[e.name]?t[e.name]:e.default;switch(e.type){case"toggle":const O=!0===e.invert_value,M=O?!s:!!s;return(0,o.createElement)("div",{className:"bb-admin-settings-form__toggle-wrapper"},(0,o.createElement)(c.ToggleControl,{key:e.name,label:e.description_controls&&e.description_controls.length>0?"":(0,L.decodeEntities)(e.description||""),checked:M,onChange:t=>{const a=O?!t:t;t&&e.confirm_message?h({isOpen:!0,message:e.confirm_message,fieldName:e.name,saveValue:a?1:0,title:e.confirm_title||"",confirmLabel:e.confirm_ok||"",cancelLabel:e.confirm_cancel||"",isDestructive:!!e.confirm_destructive}):n(e.name,a?1:0)},disabled:r,__nextHasNoMarginBottom:!0}));case"checkbox":const B=!0===e.invert_value,j=B?!s:!!s;return(0,o.createElement)(c.CheckboxControl,{key:e.name,label:"",checked:j,onChange:t=>{const a=B?!t:t;n(e.name,a?1:0)},disabled:r,__nextHasNoMarginBottom:!0});case"checkbox_list":return(0,o.createElement)(Q,{field:e,value:s,onChange:n,disabled:r,sanitizedDescription:E[e.name+"__desc"]});case"share_platforms":return(0,o.createElement)(z,{field:e,value:s,onChange:n});case"sso_providers":return(0,o.createElement)(W,{field:e,value:s,onChange:n,disabled:r});case"profile_type_redirects":return(0,o.createElement)(J,null);case"input_button":return(0,o.createElement)(ke,{field:e,value:s,onChange:n,disabled:r,values:t});case"status_check":return(0,o.createElement)(Re,{field:e,values:t,disabled:r});case"recaptcha_bypass":return(0,o.createElement)(je,{field:e,value:s,values:t,onChange:n,disabled:r});case"password":return(0,o.createElement)(Oe,{key:e.name,field:e,value:s,onChange:n,disabled:r});case"text":case"email":case"url":var u=e.field_class&&-1!==e.field_class.indexOf("bb-admin-settings-form__field--copy");return(0,o.createElement)("div",{className:(e.maxlength>0?"bb-admin-settings-form__field-text-wrapper":"")+(u?" bb-admin-settings-form__field-text-copy":"")},(0,o.createElement)(c.TextControl,{key:e.name,label:"",value:s||"",onChange:function(t){e.maxlength&&t.length>e.maxlength&&(t=t.substring(0,e.maxlength)),n(e.name,t)},type:"email"===e.type?"email":"url"===e.type?"url":"text",disabled:r,placeholder:e.placeholder||"",maxLength:e.maxlength>0?e.maxlength:void 0,__nextHasNoMarginBottom:!0}),u&&(0,o.createElement)("button",{type:"button",className:"bb-admin-settings-form__copy-btn",title:(0,l.__)("Copy to clipboard","buddyboss"),onClick:function(){navigator.clipboard&&s&&navigator.clipboard.writeText(s).then((function(){window.dispatchEvent(new CustomEvent("bb-settings-toast",{detail:{status:"success",message:(0,l.__)("Copied to clipboard.","buddyboss")}}))})).catch((function(){window.dispatchEvent(new CustomEvent("bb-settings-toast",{detail:{status:"error",message:(0,l.__)("Failed to copy to clipboard.","buddyboss")}}))}))}},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-copy"})),e.maxlength>0&&(0,o.createElement)("span",{className:"bb-admin-settings-form__textarea-counter"},(s||"").length+"/"+e.maxlength));case"textarea":return(0,o.createElement)("div",{className:"bb-admin-settings-form__textarea-wrapper"},(0,o.createElement)(c.TextareaControl,{key:e.name,label:"",value:s||"",onChange:function(t){e.maxlength&&t.length>e.maxlength&&(t=t.substring(0,e.maxlength)),n(e.name,t)},disabled:r,placeholder:e.placeholder||"",__nextHasNoMarginBottom:!0}),e.maxlength>0&&(0,o.createElement)("span",{className:"bb-admin-settings-form__textarea-counter"},(s||"").length+"/"+e.maxlength));case"select":{const t=d.getFieldOverrides(e.name),a=t&&t.options?t.options:e.options||[],i=r||!!t&&t.disabled;return t&&t.loading?(0,o.createElement)(c.SelectControl,{key:e.name,label:"",value:"",options:[{value:"",label:t.loadingText||(0,l.__)("Loading...","buddyboss")}],disabled:!0,__nextHasNoMarginBottom:!0}):(0,o.createElement)("div",{key:e.name,ref:function(t){if(!t)return;const n=t.querySelector("select");n&&n.getAttribute("name")!==e.name&&n.setAttribute("name",e.name)}},(0,o.createElement)(c.SelectControl,{label:"",value:null!=s?String(s):"",options:a,onChange:t=>n(e.name,t),disabled:i,__nextHasNoMarginBottom:!0}))}case"async_select":var m=!!e.page_view_url,_=!!(e.page_create_args&&e.page_create_args.action&&e.page_create_args.slug),v=m||_,y=b.current[e.name],w=null!=s?String(s):"",N=y&&y.id===w;y&&!N&&delete b.current[e.name];var C,x=N?y.label:e.initial_label||"";"bb-login-redirection"!==e.name&&"bb-logout-redirection"!==e.name||(C=Je);var k=(0,o.createElement)(q.x,{key:e.name,value:null!=s?String(s):"",onChange:t=>n(e.name,t),asyncAction:e.async_action||"",placeholder:e.placeholder||"",disabled:r,initialLabel:x,staticOptions:C});return v?(0,o.createElement)("div",{key:e.name,className:"bb-admin-settings-form__page-dropdown"},k,m&&(0,o.createElement)("a",{className:"bb-admin-settings-form__page-dropdown-view components-button is-secondary",href:(0,f.Pl)(e.page_view_url),target:"_blank",rel:"noopener noreferrer"},(0,l.__)("View","buddyboss"),(0,o.createElement)("i",{className:"bb-icons-rl-arrow-up-right"})),!m&&_&&(0,o.createElement)(Ze,{field:e,disabled:r,onCreated:function(t,a){a&&(b.current[e.name]={id:String(t),label:a}),n(e.name,t)}})):k;case"radio":var A=e.options||[],I=A.filter((function(e){return!!e.disabled})).map((function(e){return String(e.value)}));return(0,o.createElement)("div",{key:e.name,ref:function(e){e&&e.querySelectorAll('input[type="radio"]').forEach((function(e){var t=e.closest(".components-radio-control__option");r||I.length&&-1!==I.indexOf(e.value)?(e.disabled=!0,t&&(t.style.opacity="0.5",t.style.pointerEvents="none")):(e.disabled=!1,t&&(t.style.opacity="",t.style.pointerEvents=""))}))}},(0,o.createElement)(c.RadioControl,{label:"",selected:null!=s?String(s):"",options:A,onChange:function(t){I.length&&-1!==I.indexOf(t)||n(e.name,t)},disabled:r}));case"number":return(0,o.createElement)(c.TextControl,{key:e.name,label:"",value:s||0,onChange:t=>n(e.name,t),type:"number",min:e.min,max:e.max,__nextHasNoMarginBottom:!0});case"color":return(0,o.createElement)(Ve,{value:s,onChange:t=>n(e.name,t),fallback:e.default||"#3E34FF",disabled:r});case"image_radio":return(0,o.createElement)(pe,{field:e,value:s,onChange:n,disabled:r,descriptionHtml:E[e.name+"__desc"]||""});case"toggle_list":case"toggle_list_array":if(e.allow_add&&e.extension_data)return(0,o.createElement)(he,{field:e,value:s,onChange:n,disabled:r,sanitizedDescription:E[e.name+"__desc"]});const F="object"==typeof s?s:{};return(0,o.createElement)("div",{className:"bb-admin-settings-field__toggle-list"},(e.options||[]).map((t=>(0,o.createElement)("div",{key:t.value,className:"bb-admin-settings-field__toggle-list-item"},(0,o.createElement)(c.ToggleControl,{label:t.label,checked:!!F[t.value],onChange:a=>{const r={...F,[t.value]:a?1:0};n(e.name,r)},disabled:r||!!t.disabled,__nextHasNoMarginBottom:!0})))));case"dimensions":return(0,o.createElement)(fe,{field:e,values:t,onChange:n});case"reaction_mode":return(0,o.createElement)(S,{field:e,value:s,values:t,onChange:n,defaultEmotionsRef:i,onProBadgeClick:a});case"reaction_button":return(0,o.createElement)(T,{field:e,value:s,onChange:n});case"notice":return(0,o.createElement)("div",{key:e.name,className:`bb-admin-notice bb-admin-notice--${e.notice_type||"info"}`},(0,o.createElement)("span",{dangerouslySetInnerHTML:{__html:E[e.name+"__desc"]||""}}));case"empty_state":return(0,o.createElement)("div",{key:e.name,className:"bb-admin-empty-state"+(e.notice_type?" bb-admin-empty-state--"+e.notice_type:"")},!1!==e.icon&&(0,o.createElement)("div",{className:"bb-admin-empty-state__icon"},(0,o.createElement)("i",{className:e.icon||"bb-icons-rl bb-icons-rl-warning-circle"})),e.empty_state_title&&(0,o.createElement)("h3",{className:"bb-admin-empty-state__title",dangerouslySetInnerHTML:{__html:E[e.name+"__empty_title"]||""}}),e.empty_state_description&&(0,o.createElement)("p",{className:"bb-admin-empty-state__description"},(0,L.decodeEntities)(e.empty_state_description)),!e.empty_state_description&&e.description&&(0,o.createElement)("div",{className:"bb-admin-empty-state__description",dangerouslySetInnerHTML:{__html:E[e.name+"__desc"]||""}}),e.button_label&&e.addon_action&&e.addon_slug?(0,o.createElement)(ee,{action:e.addon_action,slug:e.addon_slug,label:e.button_label,nonceKey:e.addon_nonce_key,busyLabel:e.addon_busy_label,className:"bb-admin-empty-state__button"}):e.button_label&&e.button_url?(0,o.createElement)("a",{href:(0,f.Pl)(e.button_url),className:"bb-admin-empty-state__button",target:e.button_target||"_self",rel:"_blank"===e.button_target?"noopener noreferrer":void 0},e.button_label):null);case"reaction_migration":{const t=e.migration_data||{},n=e.migration_status||"",a="inprogress"===n||"running"===t.status,r="completed"===n;return t.action&&t.total_reactions>0&&!a&&!r?(0,o.createElement)(D,{key:e.name,field:e,onStartConversion:e=>{g({...e,wizardType:"switch"}),p(!0)}}):null}case"reaction_notice":{const t=e.migration_status||"",n=e.migration_data||{};return"inprogress"===t||"running"===n.status||"completed"===t?(0,o.createElement)(R,{key:e.name,field:e}):null}case"reaction_info":return(0,o.createElement)(P,{key:e.name,field:e,onOpenMigrationWizard:()=>{g({wizardType:"footer"}),p(!0)}});case"topic_list":return(0,o.createElement)(G,{field:e,value:s,values:t,onChange:n});case"access_control":return(0,o.createElement)(Z,{field:e,value:s,onChange:t=>n(e.name,t)});case"static_text":return"";case"hidden":return e.description_controls&&e.description_controls.length>0?(0,o.createElement)("span",{className:"bb-admin-settings-field__control--hidden","aria-hidden":"true"}):null;case"document_extensions":return(0,o.createElement)(xe,{field:e,value:s,onChange:n,disabled:r});case"image_upload":return(0,o.createElement)(le,{uploadConfig:e.upload_config||{},uploadUrl:s||"",onUpload:function(t){n(e.name,t)},onRemove:function(){n(e.name,"")},disabled:r});case"media_picker":return(0,o.createElement)(Me,{value:s,onChange:function(t){n(e.name,t)},disabled:r,config:e.media_picker_config||{}});case"sortable_toggle_list":return(0,o.createElement)(Te,{value:s,onChange:function(t){n(e.name,t)},availableItems:e.available_items||[],disabled:r});case"editable_link_list":return(0,o.createElement)(Le,{value:s,onChange:function(t){n(e.name,t)},disabled:r,config:e.editable_link_list_config||{}});case"seo_preview":return(0,o.createElement)(Ue,{field:e,values:t});case"social_preview":return(0,o.createElement)(Ge,{field:e,values:t});case"tags_reference":return(0,o.createElement)(ze,{field:e});case"manage_link":return(0,o.createElement)("button",{type:"button",className:"bb-admin-settings-field__manage-btn",onClick:function(){e.manage_url&&(window.location.href=(0,f.Pl)(e.manage_url))},disabled:r},e.manage_icon&&(0,o.createElement)("i",{className:e.manage_icon}),(0,o.createElement)("span",null,e.manage_label||(0,l.__)("Manage","buddyboss")));case"notification_types":return(0,o.createElement)(K,{field:e,value:s,onChange:function(t){n(e.name,t)}});case"domain_restrictions":return(0,o.createElement)(Ae,{field:e,value:s,onChange:n,disabled:r});case"email_restrictions":return(0,o.createElement)(Ie,{field:e,value:s,onChange:n,disabled:r});case"bb_verify_popup":return(0,o.createElement)(Fe,{field:e,values:t,disabled:r});default:return wp.hooks.applyFilters("bb_admin_settings_custom_field",null,e,s,(function(t){n(e.name,t)}),r,t)||(0,o.createElement)("p",{className:"bb-admin-settings-field__unsupported"},(0,l.__)("Field type not yet supported in React UI.","buddyboss"))}},k=(0,s.useMemo)((function(){return e.filter((function(e){return!e.parent_field}))}),[e]),{groupFirstNames:A,groupLastNames:I}=(0,s.useMemo)((function(){for(var e={},n={},a=0;a((i,s=!1)=>{if(!w(i))return null;const d=r||C(i)||!!i.disabled||N(i),u=x(i,d),b=e.filter((e=>e.parent_field===i.name));if(null===u&&0===b.length)return null;if(("notice"===i.type||"reaction_info"===i.type||i.full_width)&&!i.group?.key)return(0,o.createElement)("div",{key:i.name,className:"bb-admin-settings-form__field bb-admin-settings-form__field--full-width"},u);if("reaction_migration"===i.type||"reaction_notice"===i.type)return u;const m=("toggle"===i.type||"checkbox"===i.type)&&b.length>0,p=["bb-admin-settings-form__field",s?"bb-admin-settings-form__field--child":"",i.parent_field?"bb-admin-settings-form__field--nested":"",d?"bb-admin-settings-form__field--disabled":"",m?"bb-admin-settings-form__field--has-children":"",i.group?.key?"bb-admin-settings-form__field--grouped":"",i.group?.key&&I[i.group.key]===i.name?"bb-admin-settings-form__field--group-last":"",i.field_class||""].filter(Boolean).join(" "),_=i.group?.key&&A[i.group.key]&&A[i.group.key]!==i.name,g=i.label&&""!==i.label.trim()&&!_;return(0,o.createElement)("div",{key:i.name,className:p+(g?"":" bb-admin-settings-form__field--no-label")+("reaction_mode"!==i.type&&i.pro_notice?.show?" bb-admin-settings-form__field--pro-locked":""),"data-field-name":i.name,"data-group":i.group?.key||void 0,"data-group-inline":i.group&&i.group.inline?"true":void 0},g&&(0,o.createElement)("div",{className:"bb-admin-settings-form__field-label"},(0,o.createElement)("label",{htmlFor:"bb-field-"+i.name},(0,o.createElement)("span",{className:"bb-admin-settings-form__field-label-text"},i.label),"reaction_mode"!==i.type&&i.pro_notice?.show&&(0,o.createElement)(o.Fragment,null,(0,o.createElement)("span",{className:"bb-pro-badge"+(i.pro_notice.tier?" bb-pro-badge--"+i.pro_notice.tier:"")},(0,o.createElement)("i",{className:i.pro_notice.badge_icon||""}),(0,o.createElement)("span",null,i.pro_notice.badge_text||"LAUNCH")),i.pro_notice.modal&&a?(0,o.createElement)("button",{type:"button",onClick:()=>a(i),className:"bb-pro-badge__play-link","aria-label":(0,l.__)("Learn more","buddyboss")},(0,o.createElement)("i",{className:i.pro_notice.link_icon||"bb-icons-rl bb-icons-rl-play"})):i.pro_notice.link_url&&(0,o.createElement)("a",{href:(0,f.Pl)(i.pro_notice.link_url),target:"_blank",rel:"noopener noreferrer",className:"bb-pro-badge__play-link","aria-label":(0,l.__)("Learn more about PRO","buddyboss")},(0,o.createElement)("i",{className:i.pro_notice.link_icon||""})))),i.label_description&&(0,o.createElement)("p",{className:"bb-admin-settings-form__field-label-description"},(0,o.createElement)("span",{dangerouslySetInnerHTML:{__html:E[i.name+"__label_desc"]||""}}))),(0,o.createElement)("div",{className:"bb-admin-settings-form__field-content"+("toggle"!==i.type&&"checkbox"!==i.type||!i.description||m?"":" bb-admin-settings-form__field-content--inline")},i.group?.label&&(0,o.createElement)("label",{className:"bb-admin-settings-form__field-group-label"},i.group.label),null!==u&&!1!==u&&(0,o.createElement)("div",{className:"bb-admin-settings-form__field-input-wrapper"},i.prefix&&(0,o.createElement)("span",{className:"bb-admin-settings-form__field-prefix"},i.prefix),u,i.suffix&&(0,o.createElement)("span",{className:"bb-admin-settings-form__field-suffix"},i.suffix)),i.description&&-1===["notice","checkbox_list","share_platforms","topic_list","image_radio","access_control"].indexOf(i.type)&&!(i.allow_add&&i.extension_data)&&("toggle"!==i.type||i.description_controls&&i.description_controls.length>0)&&(()=>{const e=i.description,a=i.description_controls;if(/%(?:\d+\$)?s/.test(e)&&a&&a.length>0){const r=E[i.name+"__parts"],s=r||e.split(/%(?:\d+\$)?s/),l=("toggle"===i.type||"checkbox"===i.type)&&!t[i.name];return(0,o.createElement)("p",{className:"bb-admin-settings-form__field-description bb-admin-settings-form__field-description--has-controls"},s.map(((e,s)=>{var c,u;const b=sn(p,e.target.value),disabled:y},(_||[]).map((e=>(0,o.createElement)("option",{key:e.value,value:e.value},(0,L.decodeEntities)(String(e.label)))))),b&&"text"===b.type&&(0,o.createElement)("input",{type:"text",name:p,className:"bb-admin-settings-form__inline-text",value:v,onChange:e=>n(p,e.target.value),disabled:y}),b&&"number"===b.type&&(0,o.createElement)("input",{type:"number",name:p,className:"bb-admin-settings-form__inline-number",value:v,min:b.min,max:b.max,step:b.step,"aria-label":p,onChange:e=>n(p,parseInt(e.target.value,10)||0),disabled:y}))})))}var r=i.name+"__desc",s=t[i.name];if(i.option_descriptions&&null!=s){var l=i.name+"__optdesc__"+String(s);E[l]&&(r=l)}return(0,o.createElement)("p",{className:"bb-admin-settings-form__field-description",dangerouslySetInnerHTML:{__html:E[r]||""}})})(),i.help_text&&(0,o.createElement)("p",{className:"bb-admin-settings-form__field-help-text",dangerouslySetInnerHTML:{__html:E[i.name+"__help"]||""}}),b.length>0&&(0,o.createElement)("div",{className:"bb-admin-settings-form__child-fields"},b.reduce((function(e,a,i){var s=a.child_group_label||null,l=i>0&&b[i-1].child_group_label||null;return s&&s!==l&&e.push((0,o.createElement)("div",{key:"group-label-"+s+"-"+i,className:"bb-admin-settings-form__child-group-label"},s)),e.push(((e,a=!1)=>{if(!w(e))return null;const i=r||a||!!e.disabled||C(e)||N(e);if("checkbox"===e.type){const a=!0===e.invert_value,r=void 0!==t[e.name]?t[e.name]:e.default,s=a?!r:!!r,l=e.description||"",d=e.description_controls;if(/%(?:\d+\$)?s/.test(l)&&d&&d.length>0){const r=E[e.name+"__parts"]||l.split(/%(?:\d+\$)?s/).map((function(e){return(0,f.pn)(e)})),u=i||!s;return(0,o.createElement)("div",{key:e.name,className:"bb-admin-settings-form__child-field bb-admin-settings-form__child-field--checkbox bb-admin-settings-form__child-field--has-controls "+(i?"bb-admin-settings-form__child-field--disabled":"")},(0,o.createElement)(c.CheckboxControl,{checked:s,onChange:function(t){var r=a?!t:t;n(e.name,r?1:0)},disabled:i,__nextHasNoMarginBottom:!0}),(0,o.createElement)("span",{className:"bb-admin-settings-form__child-field-inline-desc"},r.map((function(e,a){var r,i,s=ap(!1),migrationData:_}):(0,o.createElement)(M,{isOpen:m,onClose:()=>p(!1),migrationData:_})),(0,o.createElement)(y.C,{isOpen:v.isOpen,message:v.message,title:v.title,confirmLabel:v.confirmLabel,cancelLabel:v.cancelLabel,isDestructive:v.isDestructive,onConfirm:()=>{n(v.fieldName,v.saveValue),h({isOpen:!1,message:"",fieldName:"",saveValue:0,title:"",confirmLabel:"",cancelLabel:"",isDestructive:!1})},onCancel:()=>{h({isOpen:!1,message:"",fieldName:"",saveValue:0,title:"",confirmLabel:"",cancelLabel:"",isDestructive:!1})}}))}function Xe({featureId:e,sidePanels:t,navItems:n,currentPanel:a,onNavigate:r,onBack:i,formValues:c}){const d=(0,s.useMemo)((function(){return(t||[]).filter((function(e){return Ye(e.conditional,c||{})}))}),[t,c]);return(0,o.createElement)("nav",{className:"bb-admin-side-nav","aria-label":(0,l.__)("Settings Navigation","buddyboss")},(0,o.createElement)("button",{className:"bb-admin-side-nav__back-btn",onClick:()=>{"function"==typeof i&&i()}},(0,o.createElement)("span",{className:"bb-icons-rl-arrow-left"}),(0,l.__)("Back to Settings","buddyboss")),(0,o.createElement)("ul",{className:"bb-admin-side-nav__list"},d.map((t=>{const n=!!t.external_url,i=t.icon&&(0,o.createElement)("span",{className:"bb-admin-side-nav__icon"},"dashicon"===t.icon.type&&(0,o.createElement)("span",{className:`dashicons ${t.icon.slug||"dashicons-admin-generic"}`}),"font"===t.icon.type&&t.icon.class&&(0,o.createElement)("span",{className:t.icon.class}),("svg"===t.icon.type||"image"===t.icon.type)&&t.icon.url&&(0,o.createElement)("img",{src:(0,f.Pl)(t.icon.url),alt:t.title,className:"bb-admin-side-nav__icon-img"}));return(0,o.createElement)("li",{key:t.id,className:"bb-admin-side-nav__item"},t.divider&&(0,o.createElement)("div",{className:"bb-admin-side-nav__divider"}),n?(0,o.createElement)("a",{className:"bb-admin-side-nav__link bb-admin-side-nav__link--external",href:(0,f.Pl)(t.external_url)},i,(0,o.createElement)("span",{className:"bb-admin-side-nav__text"},t.title),(0,o.createElement)("span",{className:"bb-admin-side-nav__external-indicator","aria-hidden":"true"},(0,o.createElement)("span",{className:"bb-icons-rl bb-icons-rl-arrow-up-right"}))):(0,o.createElement)("button",{className:"bb-admin-side-nav__link "+(a===t.id?"bb-admin-side-nav__link--active":""),onClick:()=>{return n=t.id,void("function"==typeof r&&r(`/settings/${e}/${n}`));var n},"aria-current":a===t.id?"page":void 0},i,(0,o.createElement)("span",{className:"bb-admin-side-nav__text"},t.title)))}))),n&&n.length>0&&(0,o.createElement)(o.Fragment,null,(0,o.createElement)("div",{className:"bb-admin-side-nav__divider"}),(0,o.createElement)("ul",{className:"bb-admin-side-nav__list bb-admin-side-nav__list--nav-items"},n.map((e=>(0,o.createElement)("li",{key:e.id,className:"bb-admin-side-nav__item"},(0,o.createElement)("button",{className:"bb-admin-side-nav__link bb-admin-side-nav__link--nav-item "+(a===e.id?"bb-admin-side-nav__link--active":""),onClick:()=>{return t=e.route,void("function"==typeof r&&r(t));var t},"aria-current":a===e.id?"page":void 0},e.icon&&(0,o.createElement)("span",{className:"bb-admin-side-nav__icon"},"string"==typeof e.icon&&(0,o.createElement)("span",{className:`dashicons ${e.icon||"dashicons-list-view"}`}),"object"==typeof e.icon&&"dashicon"===e.icon.type&&(0,o.createElement)("span",{className:`dashicons ${e.icon.slug||"dashicons-list-view"}`}),"object"==typeof e.icon&&"font"===e.icon.type&&e.icon.class&&(0,o.createElement)("span",{className:e.icon.class}),"object"==typeof e.icon&&("svg"===e.icon.type||"image"===e.icon.type)&&e.icon.url&&(0,o.createElement)("img",{src:(0,f.Pl)(e.icon.url),alt:e.label,className:"bb-admin-side-nav__icon-img"})),(0,o.createElement)("span",{className:"bb-admin-side-nav__text"},e.label))))))))}const Qe=(e=null)=>{if(e){const t=et(e);t&&localStorage.removeItem(`bb_help_content_${t}`)}else{const e=[];for(let t=0;tlocalStorage.removeItem(e)))}},et=e=>{if(!e||"string"!=typeof e)return"";const t=e.trim(),n=t.match(/^https?:\/\/(\d+)\/?$/i);if(n)return n[1];if(t.startsWith("http")||t.includes("?"))try{const e=t.startsWith("http")?t:`https://example.com?${t.split("?")[1]||""}`,n=new URL(e).searchParams.get("article");if(n)return String(n)}catch(e){}return t},tt=e=>"/wp-json/wp/v2/ht-kb/"+encodeURIComponent(e);var nt=i(7009);const at=({isOpen:e,onClose:t,children:n,title:a})=>{const r=(0,s.useRef)(null),[i,c]=(0,s.useState)([]);return(0,s.useEffect)((()=>{if(e)return document.addEventListener("keydown",n),()=>document.removeEventListener("keydown",n);function n(e){"Escape"===e.key&&(document.querySelector(".components-modal__frame")||t())}}),[e,t]),(0,s.useEffect)((()=>{if(e&&r.current){const e=function(e){if(!e)return[];const t=Array.from(e.querySelectorAll("h2")),n={};return t.map((e=>{let t=(e.textContent||e.innerText||"").trim(),a=t.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"");return n[a]?(n[a]++,a=`${a}-${n[a]}`):n[a]=1,{el:e,text:t,anchor:a}}))}(r.current);e.forEach((({el:e,anchor:t})=>{e.id=t})),c(e)}}),[e,n]),e?(0,o.createElement)("div",{className:"bb-rl-help-modal-overlay",onClick:t},(0,o.createElement)("div",{className:"bb-rl-help-modal",onClick:e=>e.stopPropagation()},(0,o.createElement)("div",{className:"bb-rl-help-modal-header"},(0,o.createElement)("h2",null,a),(0,o.createElement)("button",{className:"bb-rl-help-modal-close",onClick:t,"aria-label":(0,l.__)("Close","buddyboss")},(0,o.createElement)("span",null,"×"))),(0,o.createElement)("div",{className:"bb-rl-help-modal-content"},i.length>0&&(0,o.createElement)("nav",{className:"bb-rl-help-modal-toc"},(0,o.createElement)("h3",null,(0,l.__)("Contents","buddyboss")),(0,o.createElement)("ol",null,i.map((({text:e,anchor:t})=>(0,o.createElement)("li",{key:t},(0,o.createElement)("a",{href:`#${t}`,onClick:e=>((e,t)=>{t.preventDefault();const n=document.getElementById(e);n&&n.scrollIntoView({behavior:"smooth"})})(t,e)},e)))))),(0,o.createElement)("div",{ref:r,className:"bb-rl-help-modal-main-content"},n)))):null};var rt=i(4836);const it=i.p+"images/readylaunch.53aacaf1.jpg",ot=i.p+"images/theme.bc1d4a97.jpg",st="bb_wizard_activation",lt="rl_onboarding",ct="bb-rl-onboarding-css",dt="bb-rl-onboarding-js";function ut(){if(window.location){var e=new URL(window.location.href);e.searchParams.set(st,lt),window.location.href=e.toString()}}function bt(e){var t,n=window.bbAdminData||{},a=e&&e.settings||{};t=Object.prototype.hasOwnProperty.call(a,"bb_rl_enabled")?"1"===String(a.bb_rl_enabled):!!n.isReadyLaunch;var r=!!n.isBuddyBossThemeInstalled,i=!!n.canSwitchThemes,u=n.themeOptionsUrl||"",b=!!n.isRlOnboardingCompleted,[m,p]=(0,s.useState)(!1),[f,_]=(0,s.useState)(!1),g=m||!!n.isBuddyBossThemeActive;function v(e,t){"function"==typeof window.CustomEvent&&window.dispatchEvent(new window.CustomEvent(C,{detail:{status:e,message:t}}))}return(0,s.useEffect)((function(){function e(){if(window.history&&"function"==typeof window.history.replaceState){var e=new URL(window.location.href);e.searchParams.has(st)&&(e.searchParams.delete(st),window.history.replaceState({},"",e.toString()))}}function t(){window.location&&new URLSearchParams(window.location.search).get(st)!==lt&&window.bbRlOnboarding&&"function"==typeof window.bbRlOnboarding.unmount&&window.bbRlOnboarding.unmount()}return document.addEventListener("bb_rl_onboarding_completed",e),document.addEventListener("bb_rl_onboarding_skipped",e),document.addEventListener("bb_rl_onboarding_closed",e),window.addEventListener("popstate",t),function(){document.removeEventListener("bb_rl_onboarding_completed",e),document.removeEventListener("bb_rl_onboarding_skipped",e),document.removeEventListener("bb_rl_onboarding_closed",e),window.removeEventListener("popstate",t)}}),[]),t?(0,o.createElement)("div",{className:"bb-admin-welcome-banner bb-admin-welcome-banner--readylaunch"},(0,o.createElement)("div",{className:"bb-admin-welcome-banner__content"},(0,o.createElement)("div",{className:"bb-admin-welcome-banner__text"},(0,o.createElement)("h2",{className:"bb-admin-welcome-banner__title"},(0,l.__)("Welcome to ReadyLaunch","buddyboss")),(0,o.createElement)("div",{className:"bb-admin-welcome-banner__intro"},(0,o.createElement)("h3",{className:"bb-admin-welcome-banner__subtitle"},(0,l.__)("Theme-free community interface","buddyboss")),(0,o.createElement)("div",{className:"bb-admin-welcome-banner__intro-body"},(0,o.createElement)("p",{className:"bb-admin-welcome-banner__description"},(0,l.__)("ReadyLaunch provides a complete, ready-to-use UI for your community, directly connected to the BuddyBoss Platform backend.","buddyboss")),(0,o.createElement)("ul",{className:"bb-admin-welcome-banner__checks"},(0,o.createElement)("li",{className:"bb-admin-welcome-banner__check"},(0,l.__)("Simple management","buddyboss")),(0,o.createElement)("li",{className:"bb-admin-welcome-banner__check"},(0,l.__)("No theme required","buddyboss"))))),!b&&(0,o.createElement)("div",{className:"bb-admin-welcome-banner__actions"},(0,o.createElement)(c.Button,{className:"bb-admin-welcome-banner__btn bb-admin-welcome-banner__btn--secondary",variant:"secondary",onClick:function(){var e=n.rlOnboardingBootstrap;if(e&&e.assets&&e.assets.js){if(window.history&&"function"==typeof window.history.pushState){var t=new URL(window.location.href);t.searchParams.set(st,lt),window.history.pushState({},"",t.toString())}var a=e.wizardData&&e.wizardData.progress||{},r=Number(a.current_step)||0,i=Object.assign({},a,{current_step:Math.max(r,1)});if(window.bbRlOnboarding=Object.assign({},window.bbRlOnboarding||{},e.wizardData||{},{shouldShow:!0,progress:i}),window.bbRlOnboarding&&"function"==typeof window.bbRlOnboarding.mount)window.bbRlOnboarding.mount();else{if(e.assets.css&&!document.getElementById(ct)){var o=document.createElement("link");o.id=ct,o.rel="stylesheet",o.href=e.assets.css,document.head.appendChild(o)}if(!document.getElementById(dt)){var s=document.createElement("script");s.id=dt,s.src=e.assets.js,s.onload=function(){window.bbRlOnboarding&&"function"==typeof window.bbRlOnboarding.mount&&window.bbRlOnboarding.mount()},s.onerror=function(){ut()},document.body.appendChild(s)}}}else ut()}},(0,l.__)("Setup Wizard","buddyboss")))),(0,o.createElement)("div",{className:"bb-admin-welcome-banner__preview"},(0,o.createElement)("img",{src:it,alt:(0,l.__)("ReadyLaunch interface preview","buddyboss"),loading:"lazy"})))):(0,o.createElement)("div",{className:"bb-admin-welcome-banner bb-admin-welcome-banner--theme"},(0,o.createElement)("div",{className:"bb-admin-welcome-banner__content"},(0,o.createElement)("div",{className:"bb-admin-welcome-banner__text"},(0,o.createElement)("h2",{className:"bb-admin-welcome-banner__title"},(0,l.__)("Welcome to BuddyBoss Theme","buddyboss")),(0,o.createElement)("div",{className:"bb-admin-welcome-banner__intro"},(0,o.createElement)("h3",{className:"bb-admin-welcome-banner__subtitle"},(0,l.__)("Customizable WordPress theme","buddyboss")),(0,o.createElement)("div",{className:"bb-admin-welcome-banner__intro-body"},(0,o.createElement)("p",{className:"bb-admin-welcome-banner__description"},(0,l.__)("A premium theme designed to work with BuddyBoss Platform, offering deep design control for courses and communities.","buddyboss")),(0,o.createElement)("ul",{className:"bb-admin-welcome-banner__checks"},(0,o.createElement)("li",{className:"bb-admin-welcome-banner__check"},(0,l.__)("Advanced customization","buddyboss")),(0,o.createElement)("li",{className:"bb-admin-welcome-banner__check"},(0,l.__)("BuddyBoss theme required","buddyboss"))))),(0,o.createElement)("div",{className:"bb-admin-welcome-banner__actions"},!g&&r&&(0,o.createElement)(c.Button,{className:"bb-admin-welcome-banner__btn bb-admin-welcome-banner__btn--primary",variant:"primary",onClick:i?function(){f||(_(!0),(0,d.ZU)("bb_admin_activate_buddyboss_theme").then((function(e){e&&e.success?(window.bbAdminData&&(window.bbAdminData.isBuddyBossThemeActive=!0),p(!0),v("success",e.data&&e.data.message||(0,l.__)("BuddyBoss Theme activated.","buddyboss"))):v("error",e&&e.data&&e.data.message||(0,l.__)("Activation failed. Please try again.","buddyboss"))})).catch((function(e){v("error",e&&e.message||(0,l.__)("Activation failed. Please try again.","buddyboss"))})).then((function(){_(!1)})))}:void 0,isBusy:f,disabled:!i||f,title:i?void 0:(0,l.__)("Theme activation requires the switch_themes capability — contact your network administrator.","buddyboss")},f?(0,l.__)("Activating…","buddyboss"):(0,l.__)("Activate Theme","buddyboss")),!g&&!r&&(0,o.createElement)(c.Button,{className:"bb-admin-welcome-banner__btn bb-admin-welcome-banner__btn--primary",variant:"primary",href:"https://buddyboss.com/pricing/",target:"_blank",rel:"noopener noreferrer"},(0,l.__)("Buy Theme","buddyboss")),g&&u&&(0,o.createElement)(c.Button,{className:"bb-admin-welcome-banner__btn bb-admin-welcome-banner__btn--primary",variant:"primary",href:u},(0,l.__)("Customize Theme","buddyboss")),(0,o.createElement)(c.Button,{className:"bb-admin-welcome-banner__btn bb-admin-welcome-banner__btn--secondary",variant:"secondary",onClick:function(){"function"==typeof e.onFieldChange&&e.onFieldChange("bb_rl_enabled","1")}},(0,l.__)("Use ReadyLaunch","buddyboss")))),(0,o.createElement)("div",{className:"bb-admin-welcome-banner__preview"},(0,o.createElement)("img",{src:ot,alt:(0,l.__)("BuddyBoss Theme interface preview","buddyboss"),loading:"lazy"}))))}const mt=(0,s.lazy)((()=>i.e(794).then(i.bind(i,1794)))),pt=(0,s.lazy)((()=>i.e(483).then(i.bind(i,7483)))),ft=(0,s.lazy)((()=>i.e(966).then(i.bind(i,1966)))),_t=(0,s.lazy)((()=>i.e(499).then(i.bind(i,8499)))),gt=(0,s.lazy)((()=>i.e(517).then(i.bind(i,4517)))),vt=(0,s.lazy)((()=>i.e(223).then(i.bind(i,6223)))),yt=(0,s.lazy)((()=>i.e(424).then(i.bind(i,3424)))),ht=(0,s.lazy)((()=>i.e(510).then(i.bind(i,2510)))),Et=(0,s.lazy)((()=>i.e(944).then(i.bind(i,944)))),wt=(0,s.lazy)((()=>i.e(285).then(i.bind(i,4285)))),Nt=(0,s.lazy)((()=>i.e(801).then(i.bind(i,6801)))),Ct=(0,s.lazy)((()=>i.e(231).then(i.bind(i,3231)))),xt=(0,s.lazy)((()=>i.e(76).then(i.bind(i,5076)))),kt=(0,s.lazy)((()=>i.e(926).then(i.bind(i,6926)))),St=(0,s.lazy)((()=>i.e(362).then(i.bind(i,3362)))),At=Object.create(null);let Dt=null;const It={"activity:all_activities":mt,"groups:all_groups":pt,"groups:group_types":ft,"members:profile_types":_t,"members:profile_fields":gt,"members:profile_search":vt,"forums:all_forums":yt,"forums:discussions":ht,"forums:discussion_tags":Et,"forums:replies":wt,"moderation:reporting_categories":Nt,"moderation:flagged_members":Ct,"moderation:reported_content":xt,"emails:all_emails":kt,"invites:invites_list":St};function Ot({featureId:e,sidePanelId:t,onNavigate:n}){const[a,r]=(0,s.useState)(null),[i,u]=(0,s.useState)([]),[g,y]=(0,s.useState)([]),[h,k]=(0,s.useState)({}),[S,A]=(0,s.useState)({}),[D,I]=(0,s.useState)(!0),[O,R]=(0,s.useState)(t||null),[P,M]=(0,s.useState)(!1),[B,T]=(0,s.useState)(null),[L,j]=(0,s.useState)(!1),[F,U]=(0,s.useState)(null),[H,G]=(0,s.useState)({}),[z,V]=(0,s.useState)(0),[W,q]=(0,s.useState)(null),$=(0,s.useCallback)(((e,t,n)=>e?{label:e.label||t||"",upgrade_title:e.title||"",upgrade_description:e.description||n||"",upgrade_image_url:e.image_url||"",upgrade_media:e.media||null,upgrade_url:e.url||"https://www.buddyboss.com/pricing/",upgrade_tier:e.tier||"pro"}:null),[]),Y=(0,s.useCallback)((e=>{const t=$(e?.pro_notice?.modal,e?.label,e?.description);t&&q(t)}),[$]),J=(0,s.useCallback)((e=>{const t=$(e?.pro_notice?.modal,e?.title,e?.description);t&&q(t)}),[$]),[Z,K]=(0,s.useState)(null),[X,Q]=(0,s.useState)({}),[ee,te]=(0,s.useState)(!0),ne=(0,s.useRef)(),ae=(0,s.useRef)(e);(0,s.useEffect)((()=>{Q({}),K(null)}),[e]);const re=(0,s.useRef)(h);(0,s.useEffect)((()=>{re.current=h}),[h]);const ie=(0,s.useRef)(X);(0,s.useEffect)((()=>{ie.current=X}),[X]),(0,s.useEffect)((function(){function e(e){var t=e.detail;t&&t.fieldName&&t.status&&G((function(e){var n=Object.assign({},e);return n[t.fieldName]=t.status,n}))}return window.addEventListener(E,e),function(){window.removeEventListener(E,e)}}),[]),(0,s.useEffect)((function(){function e(e){var t=e.detail;t&&t.status&&K({status:t.status,message:t.message||""})}return window.addEventListener(C,e),function(){window.removeEventListener(C,e)}}),[]),(0,s.useEffect)((()=>{const n=b(e);if(n){r(n);const e=n.side_panels||[];u(e),y(n.navigation||[]);const a=n.settings||{};if(k(a),A(JSON.parse(JSON.stringify(a))),t&&e.some((e=>e.id===t)))R(t);else{const t=e.find((e=>e.is_default))||e[0];R(t?t.id:null)}return I(!1),void te(!1)}const a=new AbortController;return I(!0),(0,d.ZU)("bb_admin_get_feature_settings",{feature_id:e},{signal:a.signal}).then((n=>{if(n.success&&n.data){m(e,n.data),r(n.data);const a=n.data.side_panels||[];u(a),y(n.data.navigation||[]);const i=n.data.settings||{};if(k(i),A(JSON.parse(JSON.stringify(i))),t&&a.some((e=>e.id===t)))R(t);else{const e=a.find((e=>e.is_default))||a[0];R(e?e.id:null)}}I(!1),te(!1)})).catch((e=>{e&&"AbortError"===e.name||(I(!1),te(!1),K({status:"error",message:(0,l.__)("Failed to load settings. Please refresh.","buddyboss")}))})),()=>a.abort()}),[e]),(0,s.useEffect)((()=>{t&&i.some((e=>e.id===t))&&R(t)}),[t,i]),(0,s.useEffect)((()=>{V(0)}),[e]),(0,s.useEffect)((()=>{if(!(D||!a||i.length>0||z>=3)){var n=!1,o=new AbortController,s=setTimeout((function(){(0,d.ZU)("bb_admin_get_feature_settings",{feature_id:e},{signal:o.signal}).then((function(a){if(!n){if(a&&a.success&&a.data){var i=a.data.side_panels||[];if(i.length>0){m(e,a.data),r(a.data),u(i),y(a.data.navigation||[]);var o=a.data.settings||{};k(o),A(JSON.parse(JSON.stringify(o)));var s=t&&i.some((function(e){return e.id===t}))?t:(i.find((function(e){return e.is_default}))||i[0]).id;return R(s),void V(0)}}V((function(e){return e+1}))}})).catch((function(e){e&&"AbortError"===e.name||V((function(e){return e+1}))}))}),1500);return function(){n=!0,o.abort(),clearTimeout(s)}}}),[D,a,i.length,e,t,z]),(0,s.useEffect)((()=>{var t=null;const n=()=>{t&&t.abort(),t=new AbortController;var n=At[e],a=n&&n.seq||0;(0,d.ZU)("bb_admin_get_feature_settings",{feature_id:e},{signal:t.signal}).then((t=>{if(t.success&&t.data){var n=At[e],i=!(!n||(n.seq||0)===a&&!n.inFlight);if("reactions"===e||i){const n=re.current;m(e,{...t.data,settings:n}),r(t.data),u(t.data.side_panels||[])}else{const n=t.data.settings||{},a=ie.current||{},i=re.current||{},o={...n};Object.keys(a).forEach((e=>{o[e]=!0===a[e]?i[e]:a[e]})),m(e,t.data),r(t.data),u(t.data.side_panels||[]),k(o),A(JSON.parse(JSON.stringify(n)))}}})).catch((e=>{e&&"AbortError"===e.name||K({status:"error",message:(0,l.__)("Failed to refresh settings. Please try again.","buddyboss")})}))};return window.addEventListener("bb-admin-refetch-feature",n),()=>{window.removeEventListener("bb-admin-refetch-feature",n),t&&t.abort()}}),[e]),(0,s.useEffect)((function(){function e(e){var t=e.detail&&e.detail.fields,n=e.detail&&e.detail.field_options;(t&&"object"==typeof t||n&&"object"==typeof n)&&(t&&"object"==typeof t&&k((function(e){return Object.assign({},e,t)})),u((function(a){return a.map((function(a){return Object.assign({},a,{sections:(a.sections||[]).map((function(a){return Object.assign({},a,{fields:(a.fields||[]).map((function(a){var r=null,i=t&&void 0!==t[a.name],o=n&&Array.isArray(n[a.name]);return i&&((r=r||{}).default=t[a.name],"notice"===a.type&&(r.description=t[a.name]),void 0===e.detail.is_connected||"input_button"!==a.type&&"bb_verify_popup"!==a.type||(r.is_connected=e.detail.is_connected)),o&&((r=r||{}).options=n[a.name]),r?Object.assign({},a,r):a}))})}))})}))})),p())}return window.addEventListener(w,e),function(){window.removeEventListener(w,e)}}),[]),(0,s.useEffect)((function(){function e(e){var t=e.detail&&e.detail.fields,n=!(!e.detail||!e.detail.disabled);t&&Array.isArray(t)&&function(e,t){u((function(n){return n.map((function(n){return Object.assign({},n,{sections:(n.sections||[]).map((function(n){return Object.assign({},n,{fields:(n.fields||[]).map((function(n){return-1!==e.indexOf(n.name)?Object.assign({},n,t):n}))})}))})}))}))}(t,{disabled:n})}return window.addEventListener(N,e),function(){window.removeEventListener(N,e)}}),[]),(0,s.useEffect)((()=>{ae.current=e,Dt=e;var t=At[e]=At[e]||{inFlight:!1,pending:null};t.apply={displayedFeatureIdRef:ae,setToast:K,setChangedFields:Q,setSettings:k,setOriginalSettings:A,setFeature:r,setSidePanels:u};var n=function(a){if(0!==Object.keys(a).length){var r=(t.seq||0)+1;t.seq=r,t.inFlight=!0;var i,o=function(){t.inFlight=!1;var e=t.pending;e&&(t.pending=null,(t.drain||n)(e))},s=function(n){var a=n||(0,l.__)("Something went wrong. Please try again.","buddyboss");if(e!==t.apply.displayedFeatureIdRef.current){var r=b(e);a=(0,l.sprintf)(/* translators: 1: feature name, 2: underlying error message. */ /* translators: 1: feature name, 2: underlying error message. */ +(0,l.__)('Failed to save "%1$s" settings — %2$s',"buddyboss"),r&&r.label||e,a)}return{status:"error",message:a}};try{i=(0,d.ZU)("bb_admin_save_feature_settings",{feature_id:e,settings:JSON.stringify(a)})}catch{return o(),void t.apply.setToast(s())}i.then((n=>{var i=t.apply;if(n.success){var o=n.data&&n.data.saved?n.data.saved:a;if("reactions"===e)!function(e,t,n,a,r=()=>!0,i=()=>!0,o=()=>!0,s=()=>!1){const l=void 0!==t.reaction_items;let c=e.data?.migration_data,d=e.data?.migration_status||"";const u="migration_data"in(e.data||{});if(c&&"dismissed"===c.status&&(c={},d=""),l)return void a.ajaxFetch("bb_admin_get_feature_settings",{feature_id:n}).then((e=>{if(!e.success||!e.data)return;let t=e.data;if(u&&(t={...t,side_panels:x(t.side_panels,c||{},d)}),!o())return;if(!i()){const e=a.getCachedFeatureData(n),r=e&&t.settings&&void 0!==t.settings.reaction_items;return r&&a.setCachedFeatureData(n,{...e,settings:{...e.settings,reaction_items:t.settings.reaction_items}}),void(r&&s()&&(a.setSettings((e=>({...e,reaction_items:t.settings.reaction_items}))),a.setOriginalSettings((e=>({...e,reaction_items:t.settings.reaction_items})))))}if(a.setCachedFeatureData(n,t),!r())return;a.setFeature(t),a.setSidePanels(t.side_panels||[]);const l=t.settings||{};void 0!==l.reaction_items&&(a.setSettings((e=>({...e,reaction_items:l.reaction_items}))),a.setOriginalSettings((e=>({...e,reaction_items:l.reaction_items}))))})).catch((()=>{"function"==typeof a.invalidateFeatureCache&&a.invalidateFeatureCache(n)}));if(u){const e=e=>x(e,c||{},d),i=a.getCachedFeatureData(n);if(i&&a.setCachedFeatureData(n,{...i,side_panels:e(i.side_panels||[]),settings:{...i.settings,...t}}),!r())return;return a.setSidePanels((t=>e(t))),a.setFeature((t=>t?{...t,side_panels:e(t.side_panels||[])}:t)),a.setSettings((e=>({...e,...t}))),void a.setOriginalSettings((e=>({...e,...t})))}const b=a.getCachedFeatureData(n);b&&a.setCachedFeatureData(n,{...b,settings:{...b.settings,...t}}),r()&&a.setOriginalSettings((e=>({...e,...t})))}(n,a,e,{ajaxFetch:d.ZU,getCachedFeatureData:b,setCachedFeatureData:m,invalidateFeatureCache:p,setFeature:function(e){t.apply.setFeature(e)},setSidePanels:function(e){t.apply.setSidePanels(e)},setSettings:function(e){t.apply.setSettings(e)},setOriginalSettings:function(e){t.apply.setOriginalSettings(e)}},(function(){return r===t.seq&&e===t.apply.displayedFeatureIdRef.current}),(function(){return r===t.seq}),(function(){return!(r<(t.itemsRefetchSeq||0)||(t.itemsRefetchSeq=r,0))}),(function(){return"reactions"===Dt}));else{const t=b(e);t&&m(e,{...t,settings:{...t.settings,...o}}),n.data&&n.data.refresh_panels&&(p(),e===Dt&&window.dispatchEvent(new Event("bb-admin-refetch-feature")))}if(n.data&&n.data.bbAdminDataUpdates&&"object"==typeof n.data.bbAdminDataUpdates&&"undefined"!=typeof window&&window.bbAdminData&&Object.assign(window.bbAdminData,n.data.bbAdminDataUpdates),r!==t.seq||e!==i.displayedFeatureIdRef.current)return;i.setToast({status:"success",message:(0,l.__)("Settings saved.","buddyboss")}),i.setChangedFields({}),"reactions"!==e&&(i.setSettings((e=>({...e,...o}))),i.setOriginalSettings((e=>({...e,...o}))))}else i.setToast(s(n.data&&n.data.message))})).catch((()=>{t.apply.setToast(s())})).finally(o)}};return t.drain=n,ne.current=(()=>{let e;return function(...a){clearTimeout(e),e=setTimeout((()=>{clearTimeout(e),(e=>{t.inFlight?t.pending={...t.pending||{},...e}:n(e)})(...a)}),1e3)}})(),()=>{Dt===e&&(Dt=null),ne.current&&ne.current.cancel&&ne.current.cancel()}}),[e]),(0,s.useEffect)((()=>{if(!ee&&Object.keys(X).length>0){var e=re.current;const t=Object.fromEntries(Object.keys(X).map((t=>[t,!0===X[t]?e[t]:X[t]])));ne.current(t)}}),[X,ee]),(0,_.A)(Z,K);var oe=(0,s.useMemo)((function(){var e={};return i.forEach((function(t){(t.sections||[]).forEach((function(t){(t.fields||[]).forEach((function(t){"input_button"!==t.type&&"bb_verify_popup"!==t.type||!Array.isArray(t.related_fields)||t.related_fields.forEach((function(t){e[t]=!0}))}))}))})),e}),[i]),se=(0,s.useMemo)((function(){var e={};return i.forEach((function(t){(t.sections||[]).forEach((function(t){(t.fields||[]).forEach((function(t){t.parent_field&&(e[t.parent_field]||(e[t.parent_field]=[]),e[t.parent_field].push(t.name))}))}))})),e}),[i]);const le=(0,s.useCallback)(((e,t)=>{if(oe[e])k((function(n){return Object.assign({},n,{[e]:t})}));else{K({status:"saving",message:(0,l.__)("Saving changes...","buddyboss")});var n=[];"function"==typeof t||t||(n=se[e]||[]),k((a=>{var r={...a,[e]:"function"==typeof t?t(a[e]):t};return n.forEach((function(e){r[e]=0})),r})),Q((a=>{const r={...a};return r[e]="function"==typeof t||t,n.forEach((function(e){r[e]=0})),r}))}}),[oe,se]);!function({featureId:e,settings:t,settingsRef:n,initialLoad:a,setSidePanels:r,setSettings:i,handleSettingChange:o}){var l=(0,s.useRef)(null),c=(0,s.useRef)(""),d=(0,s.useRef)(o);d.current=o;var u=t.bb_group_nav_order,b=u&&"object"==typeof u?JSON.stringify(u):"";(0,s.useEffect)((function(){if("groups"===e&&b){for(var t=JSON.parse(b),o=[],s=Object.keys(t),u=0;u{M(!0),j(!0),U(null);try{const t=await(async e=>{if(!e)throw new Error("Content ID is required");const t=et(e);if(!t||!/^\d+$/.test(t))throw new Error("Could not determine help article ID");const n=`bb_help_content_${t}`,a=(e=>{const t=localStorage.getItem(e);if(t){const{timestamp:e,data:n}=JSON.parse(t);if((new Date).getTime()-e<2592e5)return n}return null})(n);if(a)return a;try{const e=await fetch((()=>{const e="undefined"!=typeof window&&window.bbAdminData&&window.bbAdminData.apiUrl?window.bbAdminData.apiUrl:"/wp-json/buddyboss/v1/";return(e.endsWith("/")?e:e+"/")+"help-content/proxy"})(),{method:"POST",credentials:"same-origin",headers:{Accept:"application/json","Content-Type":"application/json","X-WP-Nonce":"undefined"!=typeof window&&window.bbAdminData&&window.bbAdminData.nonce||""},body:JSON.stringify({url:tt(t)})});if(!e.ok){let t=`HTTP ${e.status}`;try{const n=await e.json();n&&"string"==typeof n.message&&n.message&&(t=n.message)}catch(e){}throw new Error(`Failed to fetch help content (${t})`)}const a=await e.json(),r=a&&"object"==typeof a&&a.body&&"object"==typeof a.body?a.body:{},i=r.title&&"string"==typeof r.title.rendered?r.title.rendered:"",o={title:i,content:r.content&&"string"==typeof r.content.rendered?r.content.rendered:"",videoId:(r.acf&&"string"==typeof r.acf.video_id?r.acf.video_id:"")||null,imageUrl:(r.acf&&"string"==typeof r.acf.featured_image?r.acf.featured_image:"")||null};return((e,t)=>{const n={timestamp:(new Date).getTime(),data:t};localStorage.setItem(e,JSON.stringify(n))})(n,o),o}catch(e){throw console.error("Error fetching help content:",e.message||e),e}})(e);T(t)}catch(t){U((0,l.__)("Failed to load help content. Please try again later.","buddyboss")),Qe(e)}finally{j(!1)}};if((0,s.useEffect)((function(){if(!D&&a&&i&&i.length&&!i.find((function(e){return e.id===O&&(!e.conditional||"disable"===e.conditional.action||Ye(e.conditional,h))}))){var r=i.find((function(e){return!e.conditional||"disable"===e.conditional.action||Ye(e.conditional,h)}));r&&r.id!==O&&r.id!==t&&(R(r.id),"function"==typeof n&&n(`/settings/${e}/${r.id}`))}}),[D,a,i,O,t,h,e,n]),D)return(0,o.createElement)("div",{className:"bb-admin-feature-settings bb-admin-loading"},(0,o.createElement)(c.Spinner,null));if(!a)return(0,o.createElement)("div",{className:"bb-admin-feature-settings bb-admin-not-found"},(0,o.createElement)("h2",null,(0,l.__)("Feature not found","buddyboss")),(0,o.createElement)("p",null,(0,l.__)("The requested feature could not be found.","buddyboss")));const de=i.find((function(e){return e.id===O&&(!e.conditional||"disable"===e.conditional.action||Ye(e.conditional,h))})),ue=It[e+":"+O]||null;return(0,o.createElement)("div",{className:"bb-admin-feature-settings"},(0,o.createElement)("div",{className:"bb-admin-feature-settings__container"},(0,o.createElement)("aside",{className:"bb-admin-feature-settings__sidebar"},(0,o.createElement)(Xe,{featureId:e,sidePanels:i,navItems:g,currentPanel:O,onNavigate:n,onBack:()=>{n("/settings")},formValues:h})),(0,o.createElement)("main",{className:"bb-admin-feature-settings__main"+(ue?" bb-admin-feature-settings__main--custom-panel":"")},ue?(0,o.createElement)(s.Suspense,{fallback:(0,o.createElement)("div",{className:"bb-admin-loading"},(0,o.createElement)(c.Spinner,null))},(0,o.createElement)(ue,{onNavigate:n,helpUrl:de?de.help_url:"",onHelpClick:ce,feature:a,settings:h,activePanelId:O})):(0,o.createElement)(o.Fragment,null,(0,o.createElement)("div",{className:"bb-admin-feature-settings__content-wrap"},(0,o.createElement)("div",{className:"bb-admin-feature-settings__content"},"appearance"===e&&"general"===O&&(0,o.createElement)(bt,{settings:h,onFieldChange:le}),de?(0,o.createElement)(o.Fragment,null,(de.sections||[]).map((e=>{var t=!1,n=!1;if(e.conditional&&(Ye(e.conditional,h)||("disable"===e.conditional.action?t=!0:n=!0)),n)return null;if(t&&!(e.fields||[]).some((function(e){return"hidden"!==e.type&&(!e.conditional||"disable"===e.conditional.action||Ye(e.conditional,h))})))return null;var a=e.section_toggle||null,r=!1;if(a){var i=h[a];r=!i||"0"===i||0===i}return(0,o.createElement)("div",{key:e.id,id:`section-${e.id}`,className:"bb-admin-feature-settings__section"+(t?" bb-admin-feature-settings__section--disabled":"")},(0,o.createElement)("div",{className:"bb-admin-feature-settings__section-header"},(0,o.createElement)("div",{className:"bb-admin-feature-settings__section-header-left"},(0,o.createElement)("h3",{className:"bb-admin-feature-settings__section-title"},e.title),function(){for(var t=e.fields||[],n=null,a=0;aJ(e),className:"bb-admin-feature-settings__section-pro-badge"},(0,o.createElement)("i",{className:e.pro_notice.badge_icon||"bb-icons-rl-crown-simple"}),(0,o.createElement)("span",null,e.pro_notice.badge_text||"UPGRADE LAUNCH")):(0,o.createElement)("a",{href:(0,f.Pl)(e.pro_notice.link_url||"https://www.buddyboss.com/pricing/"),target:"_blank",rel:"noopener noreferrer",className:"bb-admin-feature-settings__section-pro-badge"},(0,o.createElement)("i",{className:e.pro_notice.badge_icon||"bb-icons-rl-crown-simple"}),(0,o.createElement)("span",null,e.pro_notice.badge_text||"UPGRADE LAUNCH"))),(e.help_url||de.help_url)&&(0,o.createElement)(nt.N,{onClick:ce,contentId:e.help_url||de.help_url}),a&&(0,o.createElement)("div",{className:"bb-admin-feature-settings__section-toggle"},(0,o.createElement)(c.ToggleControl,{className:"components-form-toggle--is-big",checked:!r,onChange:function(e){le(a,e?1:0)}})))),(0,o.createElement)("div",{className:"bb-admin-feature-settings__section-body"+(r?" bb-admin-feature-settings__section-body--disabled":"")},e.description&&(0,o.createElement)(s.RawHTML,{className:"bb-admin-feature-settings__section-description"},(0,f.pn)(e.description)),!(r&&e.hide_fields_when_off)&&(0,o.createElement)(Ke,{fields:e.fields||[],values:h,onChange:le,onProBadgeClick:Y,disabled:t})))}))):0===i.length?(0,o.createElement)("div",{className:"bb-admin-feature-settings__no-section bb-admin-feature-settings__no-section--activating"},z<3?(0,o.createElement)(o.Fragment,null,(0,o.createElement)(c.Spinner,null),(0,o.createElement)("p",null,a&&a.label?(0,l.sprintf)(/* translators: %s: feature label being activated. */ /* translators: %s: feature label being activated. */ +(0,l.__)("Activating %s… this should only take a moment.","buddyboss"),a.label):(0,l.__)("Activating feature… this should only take a moment.","buddyboss"))):(0,o.createElement)(o.Fragment,null,(0,o.createElement)("p",null,(0,l.__)("Couldn't load settings. The feature may not be fully active yet.","buddyboss")),(0,o.createElement)(c.Button,{variant:"secondary",onClick:()=>{V(0)}},(0,l.__)("Try again","buddyboss")))):(0,o.createElement)("div",{className:"bb-admin-feature-settings__no-section"},(0,o.createElement)("p",null,(0,l.__)("Please select a panel from the sidebar.","buddyboss")))))))),Z&&(0,o.createElement)("div",{className:"bb-toast-container"},(0,o.createElement)(_.y,{status:Z.status,message:Z.message,onDismiss:()=>K(null)})),(0,o.createElement)(at,{isOpen:P,onClose:()=>{M(!1),T(null),U(null)},title:B&&B.title||(0,l.__)("Help","buddyboss")},L?(0,o.createElement)("div",{className:"help-content-loading"},(0,o.createElement)(c.Spinner,null),(0,o.createElement)("p",null,(0,l.__)("Loading help content...","buddyboss"))):F?(0,o.createElement)("div",{className:"help-content-error"},(0,o.createElement)("p",null,F)):B?(0,o.createElement)(o.Fragment,null,B.videoId&&/^[a-zA-Z0-9_-]+$/.test(B.videoId)&&(0,o.createElement)("div",{style:{marginBottom:16}},(0,o.createElement)("iframe",{width:"100%",height:"315",src:`https://www.youtube.com/embed/${B.videoId}`,title:(0,l.__)("Video tutorial","buddyboss"),frameBorder:"0",allowFullScreen:!0})),(0,o.createElement)("div",{className:"help-content",dangerouslySetInnerHTML:{__html:(0,rt.sanitizeKbArticle)(B.content)}}),(()=>{const e=B.imageUrl?(0,rt.safeImageUrl)(B.imageUrl):null;return e?(0,o.createElement)("img",{src:e,alt:(0,l.__)("Help content illustration","buddyboss"),style:{width:"100%",borderRadius:8,marginBottom:16}}):null})()):(0,o.createElement)("p",null,(0,l.__)("No help content available.","buddyboss"))),W&&(0,o.createElement)(v,{feature:W,onClose:()=>q(null)}))}function Rt(e){var t={};if(!Array.isArray(e))return t;var n={},a={};function r(e){var t=n[e],i=t&&"number"==typeof t.count?t.count:0;return(a[e]||[]).forEach((function(e){i+=r(e.id)})),i}return e.forEach((function(e){n[e.id]=e;var t=a[e.parent]||[];t.push(e),a[e.parent]=t})),e.forEach((function(e){e.parent||(t[e.slug]=r(e.id))})),t}function Pt({onNavigate:e}){var t=!(!window.bbAdminData||!window.bbAdminData.hasActiveLicense),n=!(!window.bbAdminData||!window.bbAdminData.hasPlusTier),a=!t,r=t&&!n,i=t&&n,u=(0,s.useState)(""),b=u[0],m=u[1],p=(0,s.useState)([]),f=p[0],_=p[1],g=(0,s.useState)(!1),v=g[0],y=g[1],h=(0,s.useState)(!1),E=h[0],w=h[1],N=(0,s.useState)(!1),C=N[0],x=N[1],k=(0,s.useRef)(null);function S(){var e=k.current;if(e){var t=e.getBoundingClientRect(),n=Math.max(0,t.bottom+window.pageYOffset-window.innerHeight+0);window.scrollTo(0,n)}}var A=(0,s.useCallback)((function(){if(window.DocsBotAI&&"function"==typeof window.DocsBotAI.toggle)return window.DocsBotAI.toggle(),void S();window.bbDocsbotFailed&&window.open("https://buddyboss.com/my-account/?tab=support","_blank","noopener,noreferrer")}),[]),D=(0,s.useCallback)((function(){if(window.DocsBotAI&&"function"==typeof window.DocsBotAI.open)return window.DocsBotAI.open(),void S();window.bbDocsbotFailed&&window.open("https://buddyboss.com/my-account/?tab=support","_blank","noopener,noreferrer")}),[]);(0,s.useEffect)((function(){var e=window.setInterval((function(){var e=!(!window.DocsBotAI||!window.DocsBotAI.isChatbotOpen);x((function(t){return t===e?t:e}))}),400);return function(){window.clearInterval(e)}}),[]);var I=(0,s.useState)([]),O=I[0],R=I[1],P=(0,s.useState)("loading"),M=P[0],B=P[1],T=(0,s.useState)(0),j=T[0],F=T[1],U=(0,s.useState)(!1),H=U[0],G=U[1],z=(0,s.useState)(!1),V=z[0],W=z[1],q=(0,s.useRef)(null),$=(0,s.useRef)(null),Y=(0,s.useRef)(null),J=(0,rt.useKb)(),Z=J.dispatch,K=J.open,X=J.close;(0,s.useEffect)((function(){var e=!1;return(0,d.ZU)("bb_admin_support_access_get").then((function(t){e||t&&t.success&&t.data&&G(!!t.data.enabled)})).catch((function(){})).finally((function(){e||W(!0)})),function(){e=!0}}),[]),(0,s.useEffect)((function(){var e=b.trim();return $.current&&clearTimeout($.current),e.length<2?(Y.current&&Y.current.abort(),_([]),y(!1)):(y(!0),w(!0),$.current=setTimeout((function(){Y.current&&Y.current.abort();var t=new AbortController;Y.current=t,window.fetch("https://buddyboss.com/wp-json/wp/v2/ht-kb/?search="+encodeURIComponent(e)+"&per_page=8&_fields=id,slug,title,excerpt,link,ht-kb-category",{signal:t.signal}).then((function(e){if(!e.ok)throw new Error("Help search request failed.");return e.json()})).then((function(e){_(Array.isArray(e)?e:[]),y(!1)})).catch((function(e){e&&"AbortError"===e.name||(_([]),y(!1))}))}),300)),function(){$.current&&clearTimeout($.current)}}),[b]),(0,s.useEffect)((function(){function e(e){q.current&&!q.current.contains(e.target)&&w(!1)}function t(e){"Escape"===e.key&&w(!1)}return document.addEventListener("mousedown",e),document.addEventListener("keydown",t),function(){document.removeEventListener("mousedown",e),document.removeEventListener("keydown",t)}}),[]),(0,s.useEffect)((function(){return function(){Y.current&&Y.current.abort(),$.current&&clearTimeout($.current)}}),[]),(0,s.useEffect)((function(){var e=new AbortController;return B("loading"),(0,rt.getTaxonomy)(e.signal).then((function(e){Array.isArray(e)?(R(e),B("ready")):B("error")})).catch((function(e){e&&"AbortError"===e.name||B("error")})),function(){e.abort()}}),[j]);var Q=(0,s.useMemo)((function(){if(!Array.isArray(O)||0===O.length)return[];var e={},t={};O.forEach((function(n){e[n.id]=n;var a=t[n.parent]||[];a.push(n),t[n.parent]=a}));var n=Rt(O),a=(0,rt.getCuratedOverrides)(),r=(t[0]||[]).map((function(e){var t=a[e.slug]||null;return{id:e.id,slug:e.slug,name:(0,L.decodeEntities)(t&&t.title?t.title:e.name||""),description:(0,L.decodeEntities)(t&&t.description?t.description:e.description||""),icon:t&&t.icon?t.icon:"bb-icons-rl-book",order:t?t.order:999,count:"number"==typeof n[e.slug]?n[e.slug]:0}}));return r.sort((function(e,t){return e.order!==t.order?e.order-t.order:e.name.localeCompare(t.name)})),r.filter((e=>0!==e.count))}),[O]),ee=(0,s.useCallback)((function(e){if(e&&e.slug){w(!1),Z({type:"selectCategory",slug:null}),Z({type:"selectArticle",slug:e.slug}),K();var t=Array.isArray(e["ht-kb-category"])?e["ht-kb-category"]:[];(0,rt.getTaxonomy)().then((function(n){var a=function(e,t){if(!Array.isArray(e)||!t)return"";var n={};e.forEach((function(e){n[e.id]=e}));for(var a=n[t],r=0;a&&a.parent&&n[a.parent]&&r<20;)a=n[a.parent],r++;return a?a.slug:""}(n,t[0]);if(!a)throw new Error("Unresolved knowledge base category.");Z({type:"selectCategory",slug:a}),Z({type:"selectArticle",slug:e.slug})})).catch((function(){X();var t=e.link||"https://www.buddyboss.com/resources/";window.open(t,"_blank","noopener,noreferrer")}))}}),[Z,K,X]),te=(0,s.useCallback)((function(e){Z({type:"selectCategory",slug:e}),K()}),[Z,K]),ne=b.trim().length>=2,ae=E&≠return(0,o.createElement)("div",{className:"bb-admin-help-screen"},(0,o.createElement)("section",{className:"bb-admin-help-hero","aria-labelledby":"bb-admin-help-hero-title"},(0,o.createElement)("div",{className:"bb-admin-help-hero__intro"},(0,o.createElement)("h1",{id:"bb-admin-help-hero-title",className:"bb-admin-help-hero__title"},(0,l.__)("Need Help?","buddyboss")),(0,o.createElement)("p",{className:"bb-admin-help-hero__subtitle"},(0,l.__)("Search our help guides, chat with us, or send us a message.","buddyboss"))),(0,o.createElement)("div",{className:"bb-admin-help-hero__search",role:"search",ref:q},(0,o.createElement)("label",{htmlFor:"bb-admin-help-hero-search",className:"screen-reader-text"},(0,l.__)("Search help guides","buddyboss")),(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-magnifying-glass bb-admin-help-hero__search-icon","aria-hidden":"true"}),(0,o.createElement)("input",{id:"bb-admin-help-hero-search",type:"search",className:"bb-admin-help-hero__search-input",placeholder:(0,l.__)("Describe your issue","buddyboss"),value:b,autoComplete:"off",role:"combobox","aria-expanded":ae,"aria-controls":"bb-admin-help-hero-results",onChange:function(e){m(e.target.value)},onFocus:function(){ne&&w(!0)}}),ae&&(0,o.createElement)("div",{id:"bb-admin-help-hero-results",className:"bb-admin-help-hero__results",role:"listbox"},v&&(0,o.createElement)("p",{className:"bb-admin-help-hero__results-status"},(0,o.createElement)(c.Spinner,null)),!v&&0===f.length&&(0,o.createElement)("p",{className:"bb-admin-help-hero__results-status"},(0,l.__)("No results found.","buddyboss")),!v&&f.map((function(e){return(0,o.createElement)("button",{type:"button",key:e.id,className:"bb-admin-help-hero__result",role:"option","aria-selected":"false",onClick:function(){ee(e)}},(0,o.createElement)("span",{className:"bb-admin-help-hero__result-title"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-file-text bb-admin-help-hero__result-icon","aria-hidden":"true"}),(0,o.createElement)("span",{className:"bb-admin-help-hero__result-title-text"},(0,L.decodeEntities)(e.title&&e.title.rendered||""))),e.excerpt&&e.excerpt.rendered&&(0,o.createElement)("span",{className:"bb-admin-help-hero__result-text"},(t=e.excerpt.rendered,((new DOMParser).parseFromString(t||"","text/html").body.textContent||"").replace(/\s+/g," ").trim())));var t}))))),(0,o.createElement)("div",{className:"bb-admin-help-wrapper"},(0,o.createElement)("div",{className:"bb-admin-help-cards"},(0,o.createElement)("article",{className:"bb-admin-help-card"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-paper-plane-tilt bb-admin-help-card__icon","aria-hidden":"true"}),(0,o.createElement)("div",{className:"bb-admin-help-card__body"},(0,o.createElement)("h2",{className:"bb-admin-help-card__title"},(0,l.__)("Support Ticket","buddyboss")),(0,o.createElement)("p",{className:"bb-admin-help-card__description"},(0,l.__)("Send your request directly to our technical support team – we’re ready to help troubleshoot and guide you.","buddyboss"))),(0,o.createElement)("a",{href:"https://buddyboss.com/my-account/?tab=support",className:"bb-admin-help-card__action is-secondary",target:"_blank",rel:"nofollow noopener noreferrer"},(0,l.__)("Submit a Ticket","buddyboss"))),(0,o.createElement)("article",{className:"bb-admin-help-card"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-key bb-admin-help-card__icon","aria-hidden":"true"}),(0,o.createElement)("div",{className:"bb-admin-help-card__body"},(0,o.createElement)("div",{className:"bb-admin-help-card__title-row"},(0,o.createElement)("h2",{className:"bb-admin-help-card__title"},(0,l.__)("Support Access","buddyboss")),V&&(H?(0,o.createElement)("span",{className:"bb-admin-help-card__status bb-admin-help-card__status--positive"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-check-circle","aria-hidden":"true"}),(0,l.__)("Enabled","buddyboss")):(0,o.createElement)("span",{className:"bb-admin-help-card__status bb-admin-help-card__status--neutral"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-x-circle","aria-hidden":"true"}),(0,l.__)("Disabled","buddyboss")))),(0,o.createElement)("p",{className:"bb-admin-help-card__description"},(0,l.__)("Allow our support team to securely access your site using temporary credentials to troubleshoot issues.","buddyboss"))),(0,o.createElement)(c.Button,{variant:"secondary",className:"bb-admin-help-card__action",onClick:function(){"function"==typeof e&&e("/settings/help/support-access")}},(0,l.__)("Open Access","buddyboss")))),(0,o.createElement)("section",{className:"bb-admin-help-resources","aria-labelledby":"bb-admin-help-resources-title"},(0,o.createElement)("h2",{id:"bb-admin-help-resources-title",className:"bb-admin-help-resources__title"},(0,l.__)("BuddyBoss Knowledge Base","buddyboss")),"loading"===M&&(0,o.createElement)("div",{className:"bb-admin-help-resources__loading","aria-busy":"true","aria-live":"polite"},(0,o.createElement)(c.Spinner,null)),"error"===M&&(0,o.createElement)("div",{className:"bb-admin-help-resources__error",role:"alert"},(0,o.createElement)("p",null,(0,l.__)("Couldn’t load the knowledge base.","buddyboss")),(0,o.createElement)(c.Button,{variant:"secondary",onClick:function(){(0,rt.clearTaxonomy)(),F((function(e){return e+1}))}},(0,l.__)("Retry","buddyboss"))),"ready"===M&&(0,o.createElement)("div",{className:"bb-admin-help-resources__grid"},Q.map((function(e){return(0,o.createElement)("button",{type:"button",key:e.slug,className:"bb-admin-help-resource-card",onClick:function(){te(e.slug)}},(0,o.createElement)("div",{className:"bb-admin-help-resource-card__head"},(0,o.createElement)("i",{className:"bb-icons-rl "+e.icon+" bb-admin-help-resource-card__icon","aria-hidden":"true"}),(0,o.createElement)("span",{className:"bb-admin-help-resource-card__title"},e.name)),e.description&&(0,o.createElement)("div",{className:"bb-admin-help-resource-card__description"},e.description),"number"==typeof e.count&&(0,o.createElement)("span",{className:"bb-admin-help-resource-card__count"},/* translators: %d is the number of articles in this resource category. */ /* translators: %d is the number of articles in this resource category. */ +(0,l.sprintf)((0,l._n)("%d article","%d articles",e.count,"buddyboss"),e.count)))})))),(0,o.createElement)("section",{className:"bb-admin-help-cta","aria-labelledby":"bb-admin-help-cta-title"},(0,o.createElement)("h2",{id:"bb-admin-help-cta-title",className:"bb-admin-help-cta__title"},(0,l.__)("Can’t find the Answer?","buddyboss")),(0,o.createElement)(c.Button,{variant:"primary",className:"bb-admin-help-cta__action",onClick:D},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-robot bb-admin-help-cta__action-icon","aria-hidden":"true"}),(0,o.createElement)("span",{className:"bb-admin-help-cta__action-label"},(0,l.__)("Ask Buddy","buddyboss")),(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-arrow-right bb-admin-help-cta__action-icon","aria-hidden":"true"}))),i&&(0,o.createElement)("div",{className:"bb-admin-help-row"},(0,o.createElement)("section",{className:"bb-admin-help-promo","aria-labelledby":"bb-admin-help-app-promo-title"},(0,o.createElement)("div",{className:"bb-admin-help-promo__media"},(0,o.createElement)("img",{src:"https://bb-features-marketing.s3.amazonaws.com/images/admin/app%203.0.png",alt:(0,l.__)("App 3.0","buddyboss"),className:"bb-admin-help-promo__image"})),(0,o.createElement)("div",{className:"bb-admin-help-promo__body"},(0,o.createElement)("div",{className:"bb-admin-help-promo__text"},(0,o.createElement)("p",{className:"bb-admin-help-promo__eyebrow"},(0,l.__)("App 3.0","buddyboss")),(0,o.createElement)("h2",{id:"bb-admin-help-app-promo-title",className:"bb-admin-help-promo__title bb-admin-help-promo__title-app-3"},(0,l.__)("New BuddyBoss App Next Gen Built on Flutter","buddyboss")),(0,o.createElement)("p",{className:"bb-admin-help-promo__description"},(0,l.__)("Say goodbye to React Native. We have completely rebuilt the BuddyBoss App using Flutter for blazing-fast performance, smoother animations, and a truly unified experience.","buddyboss"))),(0,o.createElement)("a",{target:"_blank",rel:"noopener noreferrer",href:"https://buddyboss.com/pricing/?utm_source=product&utm_medium=platform-plugin&utm_campaign=Help-upgrade-plus-to-app&utm_content=help",className:"bb-admin-help-promo__action bb-admin-help-promo__action-app-3 is-primary"},(0,o.createElement)("span",{className:"bb-admin-help-promo__action-label"},(0,l.__)("Get Next Gen App","buddyboss")))))),r&&(0,o.createElement)("div",{className:"bb-admin-help-row"},(0,o.createElement)("section",{className:"bb-admin-help-promo","aria-labelledby":"bb-admin-help-plus-promo-title"},(0,o.createElement)("div",{className:"bb-admin-help-promo__media"},(0,o.createElement)("img",{src:"https://bb-features-marketing.s3.amazonaws.com/images/admin/upgrade-plus.jpg",alt:(0,l.__)("Upgrade to scale preview","buddyboss"),className:"bb-admin-help-promo__image"})),(0,o.createElement)("div",{className:"bb-admin-help-promo__body"},(0,o.createElement)("div",{className:"bb-admin-help-promo__text"},(0,o.createElement)("p",{className:"bb-admin-help-promo__eyebrow"},(0,l.__)("BuddyBoss Scale","buddyboss")),(0,o.createElement)("h2",{id:"bb-admin-help-plus-promo-title",className:"bb-admin-help-promo__title"},(0,l.__)("Unlock Advanced Scale Features Without Paying More Than the Launch Plan","buddyboss")),(0,o.createElement)("ul",{className:"bb-admin-help-promo__list"},(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Gamification (Save $199/y)","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Point Types & Triggers","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Ranks & Leaderboards","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Achievements","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Competitions","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Offload Media (Save $199/y)","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Domain Restriction","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Premium Top-Rated Support","buddyboss")))),(0,o.createElement)("a",{target:"_blank",rel:"noopener noreferrer",href:"https://buddyboss.com/pricing/?utm_source=product&utm_medium=platform-plugin&utm_campaign=Help-upgrade-pro-to-plus&utm_content=help",className:"bb-admin-help-promo__action bb-admin-help-promo__action-plus is-primary"},(0,o.createElement)("i",{className:"bb-icons-rl-crown-simple"}),(0,o.createElement)("span",{className:"bb-admin-help-promo__action-label"},(0,l.__)("Upgrade Scale","buddyboss")))))),a&&(0,o.createElement)("div",{className:"bb-admin-help-row"},(0,o.createElement)("section",{className:"bb-admin-help-promo","aria-labelledby":"bb-admin-help-pro-promo-title"},(0,o.createElement)("div",{className:"bb-admin-help-promo__media"},(0,o.createElement)("img",{src:"https://bb-features-marketing.s3.amazonaws.com/images/admin/upgrade-pro.jpg",alt:(0,l.__)("Upgrade to launch preview","buddyboss"),className:"bb-admin-help-promo__image"})),(0,o.createElement)("div",{className:"bb-admin-help-promo__body"},(0,o.createElement)("div",{className:"bb-admin-help-promo__text"},(0,o.createElement)("p",{className:"bb-admin-help-promo__eyebrow"},(0,l.__)("BuddyBoss Launch","buddyboss")),(0,o.createElement)("h2",{id:"bb-admin-help-pro-promo-title",className:"bb-admin-help-promo__title"},(0,l.__)("Take Your Community Beyond Basics with BuddyBoss Launch Features","buddyboss")),(0,o.createElement)("ul",{className:"bb-admin-help-promo__list"},(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Premium BuddyBoss Theme","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Unlimited Members, Admins & Moderators","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("LearnDash, MemberPress Courses, TutorLMS, LifterLMS Integration","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Zoom Integration for Meetings","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Image, Video & Document Uploads","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Social Login & Access Controls","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Polls, Custom Reactions & Topics","buddyboss")),(0,o.createElement)("li",null,(0,o.createElement)("i",{className:"bb-icons-rl-check"})," ",(0,l.__)("Activity Sharing","buddyboss")))),(0,o.createElement)("a",{target:"_blank",rel:"noopener noreferrer",href:"https://buddyboss.com/pricing/?utm_source=product&utm_medium=platform-plugin&utm_campaign=Help-upgrade-free-to-pro&utm_content=help",className:"bb-admin-help-promo__action bb-admin-help-promo__action-pro is-primary"},(0,o.createElement)("i",{className:"bb-icons-rl-crown-simple"}),(0,o.createElement)("span",{className:"bb-admin-help-promo__action-label"},(0,l.__)("Upgrade Launch","buddyboss"))))))),(0,o.createElement)("footer",{ref:k,className:"bb-admin-help-footer","aria-label":(0,l.__)("Chat with Buddy","buddyboss")},(0,o.createElement)(c.Button,{variant:"primary",className:"bb-admin-help-footer__action",onClick:A,"aria-expanded":C},(0,o.createElement)("i",{className:"bb-icons-rl bb-admin-help-footer__action-icon "+(C?"bb-icons-rl-x":"bb-icons-rl-robot"),"aria-hidden":"true"}),(0,o.createElement)("span",{className:"bb-admin-help-footer__action-label"},C?(0,l.__)("Need Help","buddyboss"):(0,l.__)("Chat with Buddy","buddyboss")))))}var Mt=[{label:(0,l.__)("1 day","buddyboss"),value:"1"},{label:(0,l.__)("3 days","buddyboss"),value:"3"},{label:(0,l.__)("5 days","buddyboss"),value:"5"},{label:(0,l.__)("7 days","buddyboss"),value:"7"}];function Bt({isOpen:e,value:t,onClose:n,onSave:a}){var r=(0,s.useState)(t||"1"),i=r[0],d=r[1];return(0,s.useEffect)((function(){e&&d(t||"1")}),[e,t]),e?(0,o.createElement)(c.Modal,{title:(0,l.__)("Modify Access Duration","buddyboss"),onRequestClose:n,className:"bb-admin-modify-duration-modal bb-admin-settings-modal",shouldCloseOnClickOutside:!1},(0,o.createElement)("div",{className:"bb-admin-settings-modal__body"},(0,o.createElement)(c.SelectControl,{label:(0,l.__)("Extend support access by:","buddyboss"),value:i,options:Mt,onChange:function(e){d(e)},__nextHasNoMarginBottom:!0})),(0,o.createElement)("div",{className:"bb-admin-settings-modal__footer"},(0,o.createElement)(c.Button,{variant:"secondary",onClick:n},(0,l.__)("Cancel","buddyboss")),(0,o.createElement)(c.Button,{variant:"primary",onClick:function(){"function"==typeof a&&a(i)}},(0,l.__)("Save","buddyboss")))):null}function Tt({isOpen:e,value:t,onClose:n,onSave:a}){var r=(0,s.useState)(t||""),i=r[0],d=r[1];if((0,s.useEffect)((function(){e&&d(t||"")}),[e,t]),!e)return null;var u=i.trim(),b=/^[0-9]+$/.test(u)&&parseInt(u,10)>0;return(0,o.createElement)(c.Modal,{title:(0,l.__)("Add Ticket Number","buddyboss"),onRequestClose:n,className:"bb-admin-add-ticket-modal bb-admin-settings-modal",shouldCloseOnClickOutside:!1},(0,o.createElement)("div",{className:"bb-admin-settings-modal__body"},(0,o.createElement)(c.TextControl,{className:"bb-admin-add-ticket-modal__input",label:(0,l.__)("Ticket number","buddyboss"),hideLabelFromVision:!0,type:"number",inputMode:"numeric",min:"1",placeholder:(0,l.__)("e.g. 12345","buddyboss"),help:(0,l.__)("Enter the numeric support ticket ID.","buddyboss"),value:i,onChange:function(e){d(e)},__nextHasNoMarginBottom:!0})),(0,o.createElement)("div",{className:"bb-admin-settings-modal__footer"},(0,o.createElement)(c.Button,{variant:"secondary",onClick:n},(0,l.__)("Cancel","buddyboss")),(0,o.createElement)(c.Button,{variant:"primary",onClick:function(){b&&"function"==typeof a&&a(u)},disabled:!b},(0,l.__)("Save","buddyboss"))))}function Lt(e){var t=parseInt(e,10)||0;if(t<=0)return{days:0,hours:0,minutes:0,seconds:0};var n=t%60,a=Math.floor(t/60)%60,r=Math.floor(t/3600)%24;return{days:Math.floor(t/86400),hours:r,minutes:a,seconds:n}}function jt(e){return((e=parseInt(e,10)||0)<10?"0":"")+e}function Ft({onNavigate:e}){var t=(0,s.useState)(!1),n=t[0],a=t[1],r=(0,s.useState)(!0),i=r[0],u=r[1],b=(0,s.useState)(!1),m=b[0],p=b[1],f=(0,s.useState)({days:0,hours:0,minutes:0,seconds:0}),g=f[0],v=f[1],y=(0,s.useState)(""),h=y[0],E=y[1],w=(0,s.useState)(!1),N=w[0],C=w[1],x=(0,s.useState)([]),k=x[0],S=x[1],A=(0,s.useState)(!1),D=A[0],I=A[1],O=(0,s.useState)(null),R=O[0],P=O[1];(0,_.A)(R,P);var M=function(e){e&&(a(!!e.enabled),v(Lt(e.remaining)),S(Array.isArray(e.ticket_numbers)?e.ticket_numbers:[]),e.has_login_url&&e.login_url?E(e.login_url):e.enabled||E(""))};(0,s.useEffect)((function(){var e=!1;return(0,d.ZU)("bb_admin_support_access_get").then((function(t){e||t&&t.success&&M(t.data)})).catch((function(){})).finally((function(){e||u(!1)})),function(){e=!0}}),[]),(0,s.useEffect)((function(){if(n){var e=setInterval((function(){v((function(e){return Lt(60*(60*(24*(t=e).days+t.hours)+t.minutes)+t.seconds-1);var t}))}),1e3);return function(){clearInterval(e)}}}),[n]),(0,s.useEffect)((function(){if(n&&!(g.days||g.hours||g.minutes||g.seconds)){var e=!1;return(0,d.ZU)("bb_admin_support_access_get").then((function(t){!e&&t&&t.success&&M(t.data)})).catch((function(){})),function(){e=!0}}}),[n,g]);var B=[{key:"days",value:jt(g.days),label:(0,l.__)("Days","buddyboss")},{key:"hours",value:jt(g.hours),label:(0,l.__)("Hours","buddyboss")},{key:"minutes",value:jt(g.minutes),label:(0,l.__)("Minutes","buddyboss")},{key:"seconds",value:jt(g.seconds),label:(0,l.__)("Seconds","buddyboss")}];return(0,o.createElement)("div",{className:"bb-admin-help-screen bb-admin-support-access"},(0,o.createElement)("div",{className:"bb-admin-help-wrapper"},(0,o.createElement)("button",{type:"button",className:"bb-admin-support-access__back",onClick:function(){"function"==typeof e&&e("/settings/help")}},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-arrow-left bb-admin-support-access__back-icon","aria-hidden":"true"}),(0,o.createElement)("span",{className:"bb-admin-support-access__back-label"},(0,l.__)("Back","buddyboss"))),i?(0,o.createElement)("div",{className:"bb-admin-help--loading"},(0,o.createElement)(c.Spinner,null)):"",(0,o.createElement)("section",{className:"bb-admin-support-access__enable-card "+(n?"":"bb-admin-support-access__enable-card--disabled")},(0,o.createElement)("div",{className:"bb-admin-support-access__enable-text"},(0,o.createElement)("h2",{className:"bb-admin-support-access__enable-title"},(0,l.__)("Enable Support Access","buddyboss")),(0,o.createElement)("p",{className:"bb-admin-support-access__enable-desc"},(0,l.__)("Allow our support team to securely access your site using temporary credentials to troubleshoot issues. All access is logged and automatically expires based on your settings.","buddyboss"))),(0,o.createElement)("div",{className:"bb-admin-support-access__enable-toggle"},(0,o.createElement)(c.ToggleControl,{className:"components-form-toggle--is-big",label:"",checked:n,disabled:i||m,onChange:function(e){m||(p(!0),(0,d.ZU)("bb_admin_support_access_toggle",{enabled:e?"1":"0"}).then((function(t){t&&t.success?(M(t.data),P({status:"success",message:e?(0,l.__)("Support access enabled","buddyboss"):(0,l.__)("Support access disabled","buddyboss")})):P({status:"error",message:t&&t.data&&t.data.message||(0,l.__)("Something went wrong.","buddyboss")})})).catch((function(e){P({status:"error",message:e.message||(0,l.__)("Something went wrong.","buddyboss")})})).finally((function(){p(!1)})))},__nextHasNoMarginBottom:!0}))),n?(0,o.createElement)("section",{className:"bb-admin-support-access__panel"},(0,o.createElement)("div",{className:"bb-admin-support-access__row"},(0,o.createElement)("div",{className:"bb-admin-support-access__countdown"},(0,o.createElement)("p",{className:"bb-admin-support-access__countdown-label"},(0,l.__)("Support access expires in:","buddyboss")),(0,o.createElement)("div",{className:"bb-admin-support-access__countdown-tiles",role:"timer","aria-live":"off"},B.map((function(e){return(0,o.createElement)("div",{key:e.key,className:"bb-admin-support-access__tile"},(0,o.createElement)("span",{className:"bb-admin-support-access__tile-value"},e.value),(0,o.createElement)("span",{className:"bb-admin-support-access__tile-label"},e.label))}))))),(0,o.createElement)("div",{className:"bb-admin-support-access__divider","aria-hidden":"true"}),k.length>0&&(0,o.createElement)("div",{className:"bb-admin-support-access__tickets"},(0,o.createElement)("p",{className:"bb-admin-support-access__tickets-label"},(0,l.__)("Attached tickets:","buddyboss")),(0,o.createElement)("ul",{className:"bb-admin-support-access__tickets-list"},k.map((function(e){return(0,o.createElement)("li",{key:e,className:"bb-admin-support-access__tickets-item"},(0,l.sprintf)(/* translators: %s: ticket number. */ /* translators: %s: ticket number. */ (0,l.__)("Ticket #%s","buddyboss"),e))})))),(0,o.createElement)("div",{className:"bb-admin-support-access__actions"},(0,o.createElement)(c.Button,{variant:"primary",className:"bb-admin-support-access__ticket",disabled:m,onClick:function(){I(!0)}},k.length>0?(0,l.sprintf)(/* translators: %d: number of attached tickets. */ /* translators: %d: number of attached tickets. */ -(0,l.__)("Add Another Ticket (%d)","buddyboss"),k.length):(0,l.__)("Add Ticket Number","buddyboss")),(0,o.createElement)(c.Button,{variant:"secondary",className:"bb-admin-support-access__modify",disabled:m,onClick:function(){C(!0)}},(0,l.__)("Modify Duration","buddyboss")))):(0,o.createElement)("section",{className:"bb-admin-support-access__panel bb-admin-support-access__panel--disabled","aria-labelledby":"bb-admin-support-access-disabled-title"},(0,o.createElement)("div",{className:"bb-admin-support-access__disabled-icon","aria-hidden":"true"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-lock-simple"})),(0,o.createElement)("div",{className:"bb-admin-support-access__disabled-text"},(0,o.createElement)("h2",{id:"bb-admin-support-access-disabled-title",className:"bb-admin-support-access__disabled-title"},(0,l.__)("Access is disabled","buddyboss")),(0,o.createElement)("p",{className:"bb-admin-support-access__disabled-desc"},(0,l.__)("Enable support access to set a time limit and track all support activity.","buddyboss"))))),(0,o.createElement)(vt,{isOpen:N,value:"1",onClose:function(){C(!1)},onSave:function(e){C(!1),p(!0),(0,d.ZU)("bb_admin_support_access_extend",{days:parseInt(e,10)||0,login_url:h}).then((function(e){if(e&&e.success){M(e.data);var t=e.data&&e.data.notice;P({status:t&&t.status||"success",message:t&&t.message||(0,l.__)("Access duration updated.","buddyboss")})}else P({status:"error",message:e&&e.data&&e.data.message||(0,l.__)("Something went wrong.","buddyboss")})})).catch((function(e){P({status:"error",message:e.message||(0,l.__)("Something went wrong.","buddyboss")})})).finally((function(){p(!1)}))}}),(0,o.createElement)(yt,{isOpen:D,value:"",onClose:function(){I(!1)},onSave:function(e){I(!1),p(!0),P({status:"saving",message:(0,l.__)("Saving ticket...","buddyboss")}),(0,d.ZU)("bb_admin_support_access_set_ticket",{ticket_number:e,login_url:h}).then((function(e){if(e&&e.success){M(e.data);var t=e.data&&e.data.notice;P({status:t&&t.status||"success",message:t&&t.message||(0,l.__)("Ticket added to Support Access.","buddyboss")})}else P({status:"error",message:e&&e.data&&e.data.message||(0,l.__)("Something went wrong.","buddyboss")})})).catch((function(e){P({status:"error",message:e.message||(0,l.__)("Something went wrong.","buddyboss")})})).finally((function(){p(!1)}))}}),R&&(0,o.createElement)("div",{className:"bb-toast-container"},(0,o.createElement)(_.y,{status:R.status,message:R.message,onDismiss:function(){P(null)}})))}const Nt=(0,s.lazy)((()=>i.e(794).then(i.bind(i,1794)))),Ct=(0,s.lazy)((()=>i.e(483).then(i.bind(i,7483)))),xt=(0,s.lazy)((()=>i.e(424).then(i.bind(i,3424))));function kt(e,t){if(!e||!Array.isArray(e))return!0;const n=e.find((e=>e.id===t));return!n||"active"===n.status}function St(){return(0,o.createElement)("div",{className:"bb-admin-loading"},(0,o.createElement)("span",{className:"spinner is-active"}))}function At({featureId:e,featureLabel:t,onNavigate:n}){return(0,o.createElement)("div",{className:"bb-admin-feature-disabled"},(0,o.createElement)("div",{className:"bb-admin-feature-disabled__icon"},(0,o.createElement)("svg",{width:"64",height:"64",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},(0,o.createElement)("circle",{cx:"12",cy:"12",r:"10",stroke:"#E5E7EB",strokeWidth:"2"}),(0,o.createElement)("path",{d:"M12 8V12M12 16H12.01",stroke:"#9CA3AF",strokeWidth:"2",strokeLinecap:"round"}))),(0,o.createElement)("h2",{className:"bb-admin-feature-disabled__title"},(0,l.__)("Feature Not Enabled","buddyboss")),(0,o.createElement)("p",{className:"bb-admin-feature-disabled__description"},(0,l.sprintf)((0,l.__)("The %s feature is currently disabled. Enable it to access these settings.","buddyboss"),t||e)),(0,o.createElement)("div",{className:"bb-admin-feature-disabled__actions"},(0,o.createElement)(c.Button,{variant:"primary",onClick:()=>n("/settings")},(0,l.__)("Go to Features","buddyboss"))))}function Dt({currentRoute:e,onNavigate:t}){const[n,a]=(0,s.useState)(null),[r,i]=(0,s.useState)(!0),c=(0,s.useRef)(!1),u=(0,s.useRef)(!1),b=e.split("/").filter(Boolean),m=b[0]||"dashboard",p="settings"===m||"activity"===m||"groups"===m||"forums"===m;(0,s.useEffect)((()=>{p?(c.current||i(!0),(0,d.Kl)().then((e=>{c.current=!0,a(e),i(!1)})).catch((()=>{i(!1)}))):i(!1)}),[e,p]),(0,s.useEffect)((()=>{var t=e.split("/").filter(Boolean),n=t[0]||"dashboard";const a=new URLSearchParams(window.location.search),r=a.get("tab"),i=a.get("panel"),o=(e,t)=>{u.current&&!t?window.history.pushState({},"",e):window.history.replaceState({},"",e)};if("/settings"===e){if(r||i||window.location.hash){a.delete("tab"),a.delete("panel");const e=a.toString();o(window.location.pathname+(e?"?"+e:""),!1)}}else if("settings"===n&&t[1]){const e=t[1],n=t[2]||null;if(r!==e||i!==n||window.location.hash){const t=r===e&&!i&&!!n;a.set("tab",e),n?a.set("panel",n):a.delete("panel"),o(window.location.pathname+"?"+a.toString(),t)}}u.current=!0}),[e]);const f=e=>{if(!n)return e;const t=n.find((t=>t.id===e));return t?.label||e};switch(m){case"settings":const e=b[1],a=b[2];return"help"===e?"support-access"===a?(0,o.createElement)(wt,{onNavigate:t}):(0,o.createElement)(_t,{onNavigate:t}):e?r?(0,o.createElement)(St,null):kt(n,e)?(0,o.createElement)(pt,{featureId:e,sidePanelId:a,onNavigate:t}):(0,o.createElement)(At,{featureId:e,featureLabel:f(e),onNavigate:t}):(0,o.createElement)(h,{onNavigate:t});case"activity":if(r)return(0,o.createElement)(St,null);if(!kt(n,"activity"))return(0,o.createElement)(At,{featureId:"activity",featureLabel:f("activity"),onNavigate:t});if("all"===b[1])return(0,o.createElement)(s.Suspense,{fallback:(0,o.createElement)(St,null)},(0,o.createElement)(Nt,{onNavigate:t}));if(b[1]&&"edit"===b[2]){const e=b[1];return(0,o.createElement)("div",{className:"bb-admin-activity-edit"},(0,o.createElement)("h1",null,(0,l.__)("Edit Activity","buddyboss")),(0,o.createElement)("p",null,(0,l.__)("Activity edit screen - ID:","buddyboss")," ",e))}return(0,o.createElement)(St,null);case"groups":return r?(0,o.createElement)(St,null):kt(n,"groups")?"all"===b[1]?(0,o.createElement)(s.Suspense,{fallback:(0,o.createElement)(St,null)},(0,o.createElement)(Ct,{onNavigate:t})):(0,o.createElement)(St,null):(0,o.createElement)(At,{featureId:"groups",featureLabel:f("groups"),onNavigate:t});case"forums":return r?(0,o.createElement)(St,null):kt(n,"forums")?"all"===b[1]?(0,o.createElement)(s.Suspense,{fallback:(0,o.createElement)(St,null)},(0,o.createElement)(xt,{onNavigate:t})):(0,o.createElement)(St,null):(0,o.createElement)(At,{featureId:"forums",featureLabel:f("forums"),onNavigate:t});default:return(0,o.createElement)("div",{className:"bb-admin-not-found"},(0,o.createElement)("h2",null,(0,l.__)("Page not found","buddyboss")),(0,o.createElement)("p",null,(0,l.__)("The requested page could not be found.","buddyboss")))}}var It="bb_recaptcha_verify",Ot="bb-recaptcha-modal-v2-widget",Rt="buddyboss/recaptcha-verify",Pt="",Mt=null;wp.hooks.addFilter("bb_admin_verify_field_should_auto_submit",Rt,(function(e,t){return(!t||It!==t.name)&&e})),wp.hooks.addAction("bb_admin_verify_field_phase_change",Rt,(function(e,t,n){if(e&&It===e.name)if("loading"===t){Pt="";var a=n&&n.bb_recaptcha_site_key||"",r=n&&n.bb_recaptcha_version||"recaptcha_v3";if(!a)return;setTimeout((function(){!function(e,t,n){var a=document.getElementById("bb-recaptcha-admin-script");a&&a.remove();var r=document.querySelector(".grecaptcha-badge");r&&r.parentNode&&r.parentNode.remove();var i=document.getElementById("bb-recaptcha-invisible-container");if(i&&i.remove(),window.grecaptcha)try{delete window.grecaptcha}catch(e){window.grecaptcha=void 0}delete window.bb_recaptcha_v3_verify,delete window.bb_recaptcha_v2_verify,delete window.bb_recaptcha_v2_verify_invisible;var o=document.createElement("script");o.id="bb-recaptcha-admin-script";var s="https://www.google.com/recaptcha/api.js";if("recaptcha_v3"===t)window.bb_recaptcha_v3_verify=function(){window.grecaptcha&&window.grecaptcha.ready((function(){window.grecaptcha.execute(e,{action:"bb_recaptcha_admin_verify"}).then((function(e){n(e)}))}))},s+="?onload=bb_recaptcha_v3_verify&render="+encodeURIComponent(e);else if("recaptcha_v2_checkbox"===t)window.bb_recaptcha_v2_verify=function(){window.bb_recaptcha_box=window.grecaptcha.render(Ot,{sitekey:e,theme:"light",callback:function(e){!function(e){Pt=e,Mt&&Mt.setPhase&&Mt.setPhase("ready")}(e)}})},s+="?onload=bb_recaptcha_v2_verify&render=explicit";else if("recaptcha_v2_invisible"===t){var l=document.createElement("div");l.id="bb-recaptcha-invisible-container",document.body.appendChild(l),window.bb_recaptcha_v2_verify_invisible=function(){var t=window.grecaptcha.render("bb-recaptcha-invisible-container",{sitekey:e,size:"invisible",callback:function(e){n(e)}});window.grecaptcha.execute(t)},s+="?onload=bb_recaptcha_v2_verify_invisible&render=explicit"}o.src=s,o.async=!0,o.defer=!0,document.head.appendChild(o)}(a,r,(function(e){Pt=e,Mt&&Mt.submit&&Mt.submit()}))}),100)}else"idle"!==t&&"success"!==t&&"error"!==t&&"disconnecting"!==t||(function(){var e=document.getElementById("bb-recaptcha-admin-script");e&&e.remove();var t=document.getElementById("bb-recaptcha-invisible-container");t&&t.remove(),delete window.bb_recaptcha_v3_verify,delete window.bb_recaptcha_v2_verify,delete window.bb_recaptcha_v2_verify_invisible,delete window.bb_recaptcha_box}(),Pt="")})),wp.hooks.addFilter("bb_admin_verify_field_modal_content",Rt,(function(e,t,n,a,r){if(!t||It!==t.name)return e;Mt=r;var i="recaptcha_v2_checkbox"===(a&&a.bb_recaptcha_version||"recaptcha_v3");return"loading"===n?i?(0,s.createElement)("div",{className:"bb-recaptcha-modal__v2-container"},(0,s.createElement)("div",{id:Ot})):(0,s.createElement)("div",{className:"bb-admin-verify-modal__status"},(0,s.createElement)("p",null,(0,l.__)("Verifying reCAPTCHA token…","buddyboss"))):"ready"===n?i?(0,s.createElement)("div",{className:"bb-recaptcha-modal__v2-container"},(0,s.createElement)("div",{id:Ot})):(0,s.createElement)("div",{className:"bb-admin-verify-modal__status"},(0,s.createElement)("p",null,(0,l.__)("reCAPTCHA token is ready, click Submit to verify.","buddyboss"))):e})),wp.hooks.addFilter("bb_admin_verify_field_before_ajax",Rt,(function(e,t,n){return t&&It===t.name&&(e.append("captcha_response",Pt),e.append("bb_recaptcha_version",n&&n.bb_recaptcha_version||"recaptcha_v3")),e}));const Bt=window.wp.hooks;var Tt=["bb-pusher-app-id","bb-pusher-app-key","bb-pusher-app-secret","bb-pusher-app-cluster"];function Lt(e,t){var n=document.querySelector('input[name="'+e+'"], select[name="'+e+'"], textarea[name="'+e+'"]'),a=n&&n.value||"";return a||(a=t&&t[e]?t[e]:""),String(a).trim()}(0,Bt.addFilter)("bb_admin_verify_field_button_disabled","buddyboss/pusher-verify",(function(e,t,n,a){return t&&"_bb_pusher_verify"===t.name&&e?"custom"===Lt("bb-pusher-app-cluster",a)?e:!Tt.every((function(e){return!!Lt(e,a)})):e}));const jt=(0,s.lazy)((()=>Promise.resolve().then(i.t.bind(i,4836,23)).then((e=>({default:e.KnowledgeBaseModal})))));function Ft(){const{open:e,state:t}=(0,rt.useKb)(),[n,a]=(0,s.useState)("/settings"),[r,i]=(0,s.useState)(!0),c=(0,s.useCallback)(((e,t)=>(0,d.ZU)("bb_admin_search_settings",{query:e},{signal:t}).then((e=>e.success&&e.data?.results||[]))),[]),u=(0,s.useCallback)((e=>a(e.route)),[]);return(0,s.useEffect)((()=>{"undefined"!=typeof window&&window.bbAdminData&&window.bbAdminData.helpContentCacheFlushSignal&&Qe()}),[]),(0,s.useEffect)((()=>{!function(e){var t=document.getElementById("toplevel_page_buddyboss-platform");if(t){var n,a=e.replace(/^\//,"").split("/"),r=a[0]||"",i="settings"===r?a[1]||"":r,o="settings"===r?a[2]||"":a[1]||"",s={groups:["all_groups","group_types","group_navigation"],activity:["all_activities"],members:["profile_fields","profile_types","profile_search","profile_navigation"],forums:["all_forums","discussions","discussion_tags","replies"],emails:["all_emails"]},l=!1;s[i]&&(l=-1!==s[i].indexOf(o)),"settings"===r||"activity"!==r&&"groups"!==r&&"forums"!==r||(l=!0),n=l||"settings"===r&&-1!==["help"].indexOf(i)?i:"settings";var c=t.querySelectorAll("ul.wp-submenu li"),d=null,u=null,b=null;if(c.forEach((function(e){var t=e.querySelector("a");if(t){var a=t.getAttribute("href")||"";if(-1!==a.indexOf("page=bp-settings")&&(u=e),"admin.php?page=bb-settings"===a&&(b=e),"settings"!==n){var r={members:"bp-profile-setup"}[n]||"bp-"+n;-1!==a.indexOf("page="+r)&&(d=e),d||"forums"!==n||-1===a.indexOf("post_type=forum")||(d=e),d||-1===a.indexOf("tab="+n)||(d=e)}}})),"settings"===n&&(d=u||b),d||(d=b||u),d){c.forEach((function(e){e.classList.remove("current");var t=e.querySelector("a");t&&(t.classList.remove("current"),t.removeAttribute("aria-current"))})),d.classList.add("current");var m=d.querySelector("a");m&&(m.classList.add("current"),m.setAttribute("aria-current","page"))}}}(n)}),[n]),(0,s.useEffect)((()=>{t.isOpen&&window.DocsBotAI&&"function"==typeof window.DocsBotAI.close&&window.DocsBotAI.close()}),[t.isOpen]),(0,s.useEffect)((()=>{"undefined"!=typeof window&&"function"==typeof window.scrollTo&&window.scrollTo(0,0)}),[n]),(0,s.useEffect)((()=>{const e=new URLSearchParams(window.location.search),t=e.get("page"),n=e.get("tab"),r=e.get("panel");e.get("field");let o="/settings";if("bb-settings"===t)if(n)o=`/settings/${n}`,r&&(o+=`/${r}`);else{o=window.location.hash.replace("#","")||"/settings"}else if("bp-settings"===t&&n){const e={"bp-activity":"activity","bp-groups":"groups","bp-messages":"messages","bp-media":"media","bp-video":"video","bp-document":"document","bp-forums":"forums","bp-friends":"friends","bp-notifications":"notifications","bp-invites":"invites","bp-moderation":"moderation","bp-search":"search","bp-xprofile":"xprofile","bp-registration":"registration","bp-performance":"performance","bp-general":"general","bp-credit":"credit"}[n]||n.replace("bp-","");if(o=`/settings/${e}`,r&&(o+=`/${r}`),window.history.replaceState){const t=new URLSearchParams;t.set("page","bb-settings"),t.set("tab",e),r&&t.set("panel",r);const n=window.location.pathname+"?"+t.toString();window.history.replaceState({},"",n)}}else if("bp-activity"===t)o="/activity/all";else if("bp-groups"===t){const t=e.get("gid"),n=e.get("action");o=t&&"edit"===n?`/groups/${t}/edit`:"/groups/all"}else if("bp-components"===t)o="/settings";else if("bp-integrations"===t)o="/settings";else{const e=window.location.hash.replace("#","");e&&(o=e)}a(o),i(!1);const s=()=>{const e=new URLSearchParams(window.location.search),t=e.get("page"),n=e.get("tab"),r=e.get("panel");if("bb-settings"===t)if(n){let e=`/settings/${n}`;r&&(e+=`/${r}`),a(e)}else{const e=window.location.hash.replace("#","");a(e||"/settings")}},l=()=>{const e=window.location.hash.replace("#","");e&&a(e)};return window.addEventListener("popstate",s),window.addEventListener("hashchange",l),()=>{window.removeEventListener("popstate",s),window.removeEventListener("hashchange",l)}}),[]),r?(0,o.createElement)("div",{className:"bb-admin-loading"},(0,o.createElement)("span",{className:"spinner is-active"})):(0,o.createElement)("div",{className:"bb-admin-app"},(0,o.createElement)("a",{href:"#bb-admin-settings-main",className:"screen-reader-shortcut"},(0,l.__)("Skip to settings content","buddyboss")),(0,o.createElement)(rt.BBAdminHeader,{logoUrl:"undefined"!=typeof bbAdminData&&bbAdminData.logoUrl||"",ipnRootId:"undefined"!=typeof bbAdminData&&bbAdminData.ipnRootId||"",onSearch:c,onSelectResult:u,onHelp:e}),(0,o.createElement)("div",{id:"bb-admin-settings-main",tabIndex:"-1"},(0,o.createElement)(Dt,{currentRoute:n,onNavigate:a})),t.isOpen&&(0,o.createElement)(s.Suspense,{fallback:null},(0,o.createElement)(jt,null)))}class Ut extends s.Component{constructor(e){super(e),this.state={hasError:!1,error:null}}static getDerivedStateFromError(e){return{hasError:!0,error:e}}componentDidCatch(e,t){"undefined"!=typeof console&&console.error("[BuddyBoss Settings 2.0] Rendering error:",e,t)}handleRetry=()=>{this.setState({hasError:!1,error:null})};render(){return this.state.hasError?(0,o.createElement)("div",{className:"bb-admin-error-boundary"},(0,o.createElement)("div",{className:"bb-admin-error-boundary__content"},(0,o.createElement)("h2",null,(0,l.__)("Something went wrong","buddyboss")),(0,o.createElement)("p",null,(0,l.__)("An error occurred while loading the settings. Please try refreshing the page.","buddyboss")),this.state.error&&window.bbAdminData?.debug&&(0,o.createElement)("pre",{className:"bb-admin-error-boundary__details"},this.state.error.toString()),(0,o.createElement)("div",{className:"bb-admin-error-boundary__actions"},(0,o.createElement)("button",{type:"button",className:"button button-primary",onClick:this.handleRetry},(0,l.__)("Try Again","buddyboss")),(0,o.createElement)("button",{type:"button",className:"button",onClick:()=>window.location.reload()},(0,l.__)("Reload Page","buddyboss"))))):this.props.children}}function Ht(e){return e?((new DOMParser).parseFromString(String(e),"text/html").body.textContent||"").replace(/\s+/g," ").trim():""}function Gt({variant:e,results:t,onCancel:n,onClose:a}){return"progress"===e?(0,o.createElement)(c.Modal,{title:(0,l.__)("Repair Community","buddyboss"),onRequestClose:n,className:"bb-tools-repair-modal is-progress bb-admin-settings-modal",shouldCloseOnClickOutside:!1},(0,o.createElement)("div",{className:"bb-tools-repair-modal__body bb-admin-settings-modal__body"},(0,o.createElement)("span",{className:"bb-tools-repair-modal__icon bb-icons-rl bb-icons-rl-wrench"}),(0,o.createElement)("div",{className:"bb-tools-repair-modal__status"},(0,o.createElement)("p",null,(0,l.__)("Repairing Community","buddyboss")),(0,o.createElement)(c.Spinner,null))),(0,o.createElement)("div",{className:"bb-tools-repair-modal__actions bb-admin-settings-modal__footer"},(0,o.createElement)(c.Button,{variant:"primary",onClick:n},(0,l.__)("Cancel","buddyboss")))):(0,o.createElement)(c.Modal,{title:(0,l.__)("Repair Community","buddyboss"),onRequestClose:a,className:"bb-tools-repair-modal bb-admin-settings-modal is-complete",shouldCloseOnClickOutside:!1},(0,o.createElement)("div",{className:"bb-tools-repair-modal__body"},(0,o.createElement)("div",{className:"bb-tools-repair-modal__checkmark"},(0,o.createElement)("span",{className:"bb-icons-rl bb-icons-rl-check-circle"})),(0,o.createElement)("h3",null,(0,l.__)("Repair community complete","buddyboss")),(0,o.createElement)("ul",{className:"bb-tools-repair-modal__results"},(t||[]).map((function(e){const t=function(e){if(!e.success)return"error";const t=Ht(e.message),n=t.match(/\b(\d+)\s*\/\s*(\d+)\b/);if(n){const e=parseInt(n[1],10),t=parseInt(n[2],10);if(0===e&&t>0)return"error";if(e0})).sort((function(e,t){return(e.order||0)-(t.order||0)}))}),[t,n]),N=(0,s.useCallback)((function(e,t){b((function(n){const a=new Set(n);return t?a.add(e):a.delete(e),a}))}),[]),C=(0,s.useCallback)((function(e){b(e?new Set(t.map((function(e){return e.id}))):new Set)}),[t]),x=(0,s.useCallback)((async function(){if(0===u.size)return;if(a&&""===m)return void h((0,l.__)("Please select a site before repairing.","buddyboss"));h(null),v([]),_("progress");const e=new AbortController;E.current=e;const n=[],r={};t.forEach((function(e){r[e.id]=e}));for(const t of u){const o=r[t];if(!o)continue;const s=i[o.nonce]||i.repair,c=o.endpoint||"bp_admin_repair_tools_wrapper_function";try{const r=1e4;let i=0,u=null;for(let n=0;n0&&n.append("offset",String(i)),a&&m&&n.append("site_id",m);const r=await fetch(d,{method:"POST",body:n,credentials:"same-origin",signal:e.signal});if(u=await r.json(),!u||!u.success)break;const o=u.data||{};if("running"!==o.status)break;const l="number"==typeof o.offset?o.offset:Number(o.offset);if(!(l>i))break;i=l}n.push({id:t,label:o.label,success:!(!u||!u.success),message:u&&u.data&&u.data.message||(u&&u.success?(0,l.__)("Repaired","buddyboss"):(0,l.__)("Failed","buddyboss")),count:u&&u.data&&void 0!==u.data.count?u.data.count:null,summary:u&&u.data&&u.data.summary||"",summary_html:u&&u.data&&u.data.summary_html||""})}catch(e){if("AbortError"===e.name)return void _(null);n.push({id:t,label:o.label,success:!1,message:(0,l.__)("Network error","buddyboss")})}}v(n),_("complete")}),[u,m,a,t,i,d]),k=(0,s.useCallback)((function(){E.current&&E.current.abort(),_(null)}),[]),S=(0,s.useCallback)((function(){_(null),v([]),b(new Set)}),[]),A=u.size===t.length&&t.length>0;return(0,o.createElement)("div",{className:"bb-tools-repair-platform"},a&&(0,o.createElement)("div",{className:"bb-tools-repair-platform__site-selector"},(0,o.createElement)(c.SelectControl,{label:(0,l.__)("Select a site to repair","buddyboss"),value:m,options:[{value:"",label:(0,l.__)("— Select a site —","buddyboss")}].concat(r.map((function(e){return{value:String(e.blog_id),label:e.domain+e.path}}))),onChange:p})),y&&(0,o.createElement)(c.Notice,{status:"error",isDismissible:!0,onRemove:function(){h(null)}},y),(0,o.createElement)("div",{className:"bb-tools-repair-platform__select-all"},(0,o.createElement)(c.CheckboxControl,{label:(0,l.__)("Select All","buddyboss"),checked:A,onChange:C})),w.map((function(e){return(0,o.createElement)("div",{key:e.id,className:"bb-tools-repair-platform__section"},(0,o.createElement)("div",{className:"bb-tools-repair-platform__section-heading"},(0,o.createElement)("span",{className:"bb-tools-repair-platform__section-title"},e.label)),(0,o.createElement)("div",{className:"bb-tools-repair-platform__section-items"},e.items.map((function(e){return(0,o.createElement)(c.CheckboxControl,{key:e.id,label:e.label,checked:u.has(e.id),onChange:function(t){N(e.id,t)}})}))))})),(0,o.createElement)("div",{className:"bb-tools-repair-platform__actions"},(0,o.createElement)(c.Button,{variant:"primary",onClick:x,disabled:0===u.size},(0,l.__)("Repair Items","buddyboss"))),"progress"===f&&(0,o.createElement)(Gt,{variant:"progress",onCancel:k}),"complete"===f&&(0,o.createElement)(Gt,{variant:"complete",results:g,onClose:S}))}function Vt(){const[e,t]=(0,s.useState)("loading"),[n,a]=(0,s.useState)(!1),[r,i]=(0,s.useState)(null),[d,u]=(0,s.useState)(""),b=(0,s.useRef)(null),m=window.bbAdminData&&window.bbAdminData.ajaxUrl||window.ajaxurl;(0,s.useEffect)((function(){const e=new AbortController;b.current=e;const n=new FormData;return n.append("action","bb_tools_check_plugin_state"),n.append("_ajax_nonce",window.bbAdminData&&window.bbAdminData.ajaxNonce||""),fetch(m,{method:"POST",body:n,signal:e.signal,credentials:"same-origin"}).then((function(e){return e.json()})).then((function(e){e&&e.success&&e.data?(t(e.data.state),e.data.license_url&&u(e.data.license_url)):t("not-installed")})).catch((function(e){"AbortError"!==e.name&&t("not-installed")})),function(){b.current&&b.current.abort()}}),[]);const p=(0,s.useCallback)((function(){if(n)return;a(!0),i(null),b.current&&b.current.abort();const t=new AbortController;b.current=t;const r="installed"===e?"bb_tools_activate_plugin":"bb_tools_install_plugin",o=new FormData;o.append("action",r),o.append("_ajax_nonce",window.bbAdminData&&window.bbAdminData.ajaxNonce||""),fetch(m,{method:"POST",body:o,credentials:"same-origin",signal:t.signal}).then((function(e){return e.json()})).then((function(e){if(e&&e.success)window.location.reload();else{const t=e&&e.data&&e.data.message||(0,l.__)("Operation failed. Please try again.","buddyboss");i(t),a(!1)}})).catch((function(e){e&&"AbortError"===e.name||(i((0,l.__)("Network error. Please try again.","buddyboss")),a(!1))}))}),[e,n]);if("loading"===e)return(0,o.createElement)("div",{className:"bb-tools-activation-cta is-loading"},(0,o.createElement)(c.Spinner,null));if("active"===e)return(0,o.createElement)("div",{className:"bb-tools-activation-cta"},(0,o.createElement)("div",{className:"bb-tools-activation-cta__icon"},(0,o.createElement)("span",{className:"bb-icons-rl bb-icons-rl-info"})),(0,o.createElement)("h2",{className:"bb-tools-activation-cta__title"},(0,l.__)("Coming Soon","buddyboss")),(0,o.createElement)("p",{className:"bb-tools-activation-cta__description"},(0,l.__)("The BuddyBoss Tools addon is installed, but this feature is not yet available. Update the addon to use it.","buddyboss")));if("needs-license"===e)return(0,o.createElement)("div",{className:"bb-tools-activation-cta"},(0,o.createElement)("div",{className:"bb-tools-activation-cta__icon"},(0,o.createElement)("span",{className:"bb-icons-rl bb-icons-rl-info"})),(0,o.createElement)("h2",{className:"bb-tools-activation-cta__title"},(0,l.__)("License Required","buddyboss")),(0,o.createElement)("p",{className:"bb-tools-activation-cta__description"},(0,l.__)("Please activate your BuddyBoss license to install and use this feature.","buddyboss")),(0,o.createElement)(c.Button,{variant:"primary",href:d||"#"},(0,l.__)("Activate License","buddyboss")));const f="installed"===e?(0,l.__)("Activate Now","buddyboss"):(0,l.__)("Install Now","buddyboss");return(0,o.createElement)("div",{className:"bb-tools-activation-cta"},(0,o.createElement)("div",{className:"bb-tools-activation-cta__icon"},(0,o.createElement)("span",{className:"bb-icons-rl bb-icons-rl-info"})),(0,o.createElement)("h2",{className:"bb-tools-activation-cta__title"},(0,l.__)("Activation Required","buddyboss")),(0,o.createElement)("p",{className:"bb-tools-activation-cta__description"},(0,l.__)("Please activate the BuddyBoss Tools addon to use this feature.","buddyboss")),r&&(0,o.createElement)("div",{className:"bb-admin-notice bb-admin-notice--error"},r),(0,o.createElement)(c.Button,{variant:"primary",onClick:p,disabled:n},f))}(0,Bt.addFilter)("bb_admin_settings_custom_field","buddyboss-platform/tools-repair-platform",(function(e,t){return t&&"bb_tools_repair_platform"===t.type?(0,o.createElement)(zt,null):e})),(0,Bt.addFilter)("bb_admin_settings_custom_field","buddyboss-platform/tools-sample-data-fallback",(function(e,t){return t&&"bb_tools_sample_data"===t.type?e||((0,Bt.hasFilter)("bb_admin_settings_custom_field","buddyboss-tools/sample-data")?e:(0,o.createElement)(Vt,null)):e}),99),(0,Bt.addFilter)("bb_admin_settings_custom_field","buddyboss-platform/tools-migration-tools-fallback",(function(e,t){return t&&"bb_tools_migration_tools"===t.type?e||((0,Bt.hasFilter)("bb_admin_settings_custom_field","buddyboss-tools/migration-tools")?e:(0,o.createElement)(Vt,null)):e}),99);const Wt=document.getElementById("bb-admin-settings");Wt&&(0,s.createRoot)(Wt).render((0,o.createElement)(Ut,null,(0,o.createElement)((function(){return(0,o.createElement)(rt.KbProvider,null,(0,o.createElement)(Ft,null))}),null)))})(); \ No newline at end of file +(0,l.__)("Add Another Ticket (%d)","buddyboss"),k.length):(0,l.__)("Add Ticket Number","buddyboss")),(0,o.createElement)(c.Button,{variant:"secondary",className:"bb-admin-support-access__modify",disabled:m,onClick:function(){C(!0)}},(0,l.__)("Modify Duration","buddyboss")))):(0,o.createElement)("section",{className:"bb-admin-support-access__panel bb-admin-support-access__panel--disabled","aria-labelledby":"bb-admin-support-access-disabled-title"},(0,o.createElement)("div",{className:"bb-admin-support-access__disabled-icon","aria-hidden":"true"},(0,o.createElement)("i",{className:"bb-icons-rl bb-icons-rl-lock-simple"})),(0,o.createElement)("div",{className:"bb-admin-support-access__disabled-text"},(0,o.createElement)("h2",{id:"bb-admin-support-access-disabled-title",className:"bb-admin-support-access__disabled-title"},(0,l.__)("Access is disabled","buddyboss")),(0,o.createElement)("p",{className:"bb-admin-support-access__disabled-desc"},(0,l.__)("Enable support access to set a time limit and track all support activity.","buddyboss"))))),(0,o.createElement)(Bt,{isOpen:N,value:"1",onClose:function(){C(!1)},onSave:function(e){C(!1),p(!0),(0,d.ZU)("bb_admin_support_access_extend",{days:parseInt(e,10)||0,login_url:h}).then((function(e){if(e&&e.success){M(e.data);var t=e.data&&e.data.notice;P({status:t&&t.status||"success",message:t&&t.message||(0,l.__)("Access duration updated.","buddyboss")})}else P({status:"error",message:e&&e.data&&e.data.message||(0,l.__)("Something went wrong.","buddyboss")})})).catch((function(e){P({status:"error",message:e.message||(0,l.__)("Something went wrong.","buddyboss")})})).finally((function(){p(!1)}))}}),(0,o.createElement)(Tt,{isOpen:D,value:"",onClose:function(){I(!1)},onSave:function(e){I(!1),p(!0),P({status:"saving",message:(0,l.__)("Saving ticket...","buddyboss")}),(0,d.ZU)("bb_admin_support_access_set_ticket",{ticket_number:e,login_url:h}).then((function(e){if(e&&e.success){M(e.data);var t=e.data&&e.data.notice;P({status:t&&t.status||"success",message:t&&t.message||(0,l.__)("Ticket added to Support Access.","buddyboss")})}else P({status:"error",message:e&&e.data&&e.data.message||(0,l.__)("Something went wrong.","buddyboss")})})).catch((function(e){P({status:"error",message:e.message||(0,l.__)("Something went wrong.","buddyboss")})})).finally((function(){p(!1)}))}}),R&&(0,o.createElement)("div",{className:"bb-toast-container"},(0,o.createElement)(_.y,{status:R.status,message:R.message,onDismiss:function(){P(null)}})))}const Ut=(0,s.lazy)((()=>i.e(794).then(i.bind(i,1794)))),Ht=(0,s.lazy)((()=>i.e(483).then(i.bind(i,7483)))),Gt=(0,s.lazy)((()=>i.e(424).then(i.bind(i,3424))));function zt(e,t){if(!e||!Array.isArray(e))return!0;const n=e.find((e=>e.id===t));return!n||"active"===n.status}function Vt(){return(0,o.createElement)("div",{className:"bb-admin-loading"},(0,o.createElement)("span",{className:"spinner is-active"}))}function Wt({featureId:e,featureLabel:t,onNavigate:n}){return(0,o.createElement)("div",{className:"bb-admin-feature-disabled"},(0,o.createElement)("div",{className:"bb-admin-feature-disabled__icon"},(0,o.createElement)("svg",{width:"64",height:"64",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},(0,o.createElement)("circle",{cx:"12",cy:"12",r:"10",stroke:"#E5E7EB",strokeWidth:"2"}),(0,o.createElement)("path",{d:"M12 8V12M12 16H12.01",stroke:"#9CA3AF",strokeWidth:"2",strokeLinecap:"round"}))),(0,o.createElement)("h2",{className:"bb-admin-feature-disabled__title"},(0,l.__)("Feature Not Enabled","buddyboss")),(0,o.createElement)("p",{className:"bb-admin-feature-disabled__description"},(0,l.sprintf)((0,l.__)("The %s feature is currently disabled. Enable it to access these settings.","buddyboss"),t||e)),(0,o.createElement)("div",{className:"bb-admin-feature-disabled__actions"},(0,o.createElement)(c.Button,{variant:"primary",onClick:()=>n("/settings")},(0,l.__)("Go to Features","buddyboss"))))}function qt({currentRoute:e,onNavigate:t}){const[n,a]=(0,s.useState)(null),[r,i]=(0,s.useState)(!0),c=(0,s.useRef)(!1),u=(0,s.useRef)(!1),b=e.split("/").filter(Boolean),m=b[0]||"dashboard",p="settings"===m||"activity"===m||"groups"===m||"forums"===m;(0,s.useEffect)((()=>{p?(c.current||i(!0),(0,d.Kl)().then((e=>{c.current=!0,a(e),i(!1)})).catch((()=>{i(!1)}))):i(!1)}),[e,p]),(0,s.useEffect)((()=>{var t=e.split("/").filter(Boolean),n=t[0]||"dashboard";const a=new URLSearchParams(window.location.search),r=a.get("tab"),i=a.get("panel"),o=(e,t)=>{u.current&&!t?window.history.pushState({},"",e):window.history.replaceState({},"",e)};if("/settings"===e){if(r||i||window.location.hash){a.delete("tab"),a.delete("panel");const e=a.toString();o(window.location.pathname+(e?"?"+e:""),!1)}}else if("settings"===n&&t[1]){const e=t[1],n=t[2]||null;if(r!==e||i!==n||window.location.hash){const t=r===e&&!i&&!!n;a.set("tab",e),n?a.set("panel",n):a.delete("panel"),o(window.location.pathname+"?"+a.toString(),t)}}u.current=!0}),[e]);const f=e=>{if(!n)return e;const t=n.find((t=>t.id===e));return t?.label||e};switch(m){case"settings":const e=b[1],a=b[2];return"help"===e?"support-access"===a?(0,o.createElement)(Ft,{onNavigate:t}):(0,o.createElement)(Pt,{onNavigate:t}):e?r?(0,o.createElement)(Vt,null):zt(n,e)?(0,o.createElement)(Ot,{featureId:e,sidePanelId:a,onNavigate:t}):(0,o.createElement)(Wt,{featureId:e,featureLabel:f(e),onNavigate:t}):(0,o.createElement)(h,{onNavigate:t});case"activity":if(r)return(0,o.createElement)(Vt,null);if(!zt(n,"activity"))return(0,o.createElement)(Wt,{featureId:"activity",featureLabel:f("activity"),onNavigate:t});if("all"===b[1])return(0,o.createElement)(s.Suspense,{fallback:(0,o.createElement)(Vt,null)},(0,o.createElement)(Ut,{onNavigate:t}));if(b[1]&&"edit"===b[2]){const e=b[1];return(0,o.createElement)("div",{className:"bb-admin-activity-edit"},(0,o.createElement)("h1",null,(0,l.__)("Edit Activity","buddyboss")),(0,o.createElement)("p",null,(0,l.__)("Activity edit screen - ID:","buddyboss")," ",e))}return(0,o.createElement)(Vt,null);case"groups":return r?(0,o.createElement)(Vt,null):zt(n,"groups")?"all"===b[1]?(0,o.createElement)(s.Suspense,{fallback:(0,o.createElement)(Vt,null)},(0,o.createElement)(Ht,{onNavigate:t})):(0,o.createElement)(Vt,null):(0,o.createElement)(Wt,{featureId:"groups",featureLabel:f("groups"),onNavigate:t});case"forums":return r?(0,o.createElement)(Vt,null):zt(n,"forums")?"all"===b[1]?(0,o.createElement)(s.Suspense,{fallback:(0,o.createElement)(Vt,null)},(0,o.createElement)(Gt,{onNavigate:t})):(0,o.createElement)(Vt,null):(0,o.createElement)(Wt,{featureId:"forums",featureLabel:f("forums"),onNavigate:t});default:return(0,o.createElement)("div",{className:"bb-admin-not-found"},(0,o.createElement)("h2",null,(0,l.__)("Page not found","buddyboss")),(0,o.createElement)("p",null,(0,l.__)("The requested page could not be found.","buddyboss")))}}var $t="bb_recaptcha_verify",Yt="bb-recaptcha-modal-v2-widget",Jt="buddyboss/recaptcha-verify",Zt="",Kt=null;wp.hooks.addFilter("bb_admin_verify_field_should_auto_submit",Jt,(function(e,t){return(!t||$t!==t.name)&&e})),wp.hooks.addAction("bb_admin_verify_field_phase_change",Jt,(function(e,t,n){if(e&&$t===e.name)if("loading"===t){Zt="";var a=n&&n.bb_recaptcha_site_key||"",r=n&&n.bb_recaptcha_version||"recaptcha_v3";if(!a)return;setTimeout((function(){!function(e,t,n){var a=document.getElementById("bb-recaptcha-admin-script");a&&a.remove();var r=document.querySelector(".grecaptcha-badge");r&&r.parentNode&&r.parentNode.remove();var i=document.getElementById("bb-recaptcha-invisible-container");if(i&&i.remove(),window.grecaptcha)try{delete window.grecaptcha}catch(e){window.grecaptcha=void 0}delete window.bb_recaptcha_v3_verify,delete window.bb_recaptcha_v2_verify,delete window.bb_recaptcha_v2_verify_invisible;var o=document.createElement("script");o.id="bb-recaptcha-admin-script";var s="https://www.google.com/recaptcha/api.js";if("recaptcha_v3"===t)window.bb_recaptcha_v3_verify=function(){window.grecaptcha&&window.grecaptcha.ready((function(){window.grecaptcha.execute(e,{action:"bb_recaptcha_admin_verify"}).then((function(e){n(e)}))}))},s+="?onload=bb_recaptcha_v3_verify&render="+encodeURIComponent(e);else if("recaptcha_v2_checkbox"===t)window.bb_recaptcha_v2_verify=function(){window.bb_recaptcha_box=window.grecaptcha.render(Yt,{sitekey:e,theme:"light",callback:function(e){!function(e){Zt=e,Kt&&Kt.setPhase&&Kt.setPhase("ready")}(e)}})},s+="?onload=bb_recaptcha_v2_verify&render=explicit";else if("recaptcha_v2_invisible"===t){var l=document.createElement("div");l.id="bb-recaptcha-invisible-container",document.body.appendChild(l),window.bb_recaptcha_v2_verify_invisible=function(){var t=window.grecaptcha.render("bb-recaptcha-invisible-container",{sitekey:e,size:"invisible",callback:function(e){n(e)}});window.grecaptcha.execute(t)},s+="?onload=bb_recaptcha_v2_verify_invisible&render=explicit"}o.src=s,o.async=!0,o.defer=!0,document.head.appendChild(o)}(a,r,(function(e){Zt=e,Kt&&Kt.submit&&Kt.submit()}))}),100)}else"idle"!==t&&"success"!==t&&"error"!==t&&"disconnecting"!==t||(function(){var e=document.getElementById("bb-recaptcha-admin-script");e&&e.remove();var t=document.getElementById("bb-recaptcha-invisible-container");t&&t.remove(),delete window.bb_recaptcha_v3_verify,delete window.bb_recaptcha_v2_verify,delete window.bb_recaptcha_v2_verify_invisible,delete window.bb_recaptcha_box}(),Zt="")})),wp.hooks.addFilter("bb_admin_verify_field_modal_content",Jt,(function(e,t,n,a,r){if(!t||$t!==t.name)return e;Kt=r;var i="recaptcha_v2_checkbox"===(a&&a.bb_recaptcha_version||"recaptcha_v3");return"loading"===n?i?(0,s.createElement)("div",{className:"bb-recaptcha-modal__v2-container"},(0,s.createElement)("div",{id:Yt})):(0,s.createElement)("div",{className:"bb-admin-verify-modal__status"},(0,s.createElement)("p",null,(0,l.__)("Verifying reCAPTCHA token…","buddyboss"))):"ready"===n?i?(0,s.createElement)("div",{className:"bb-recaptcha-modal__v2-container"},(0,s.createElement)("div",{id:Yt})):(0,s.createElement)("div",{className:"bb-admin-verify-modal__status"},(0,s.createElement)("p",null,(0,l.__)("reCAPTCHA token is ready, click Submit to verify.","buddyboss"))):e})),wp.hooks.addFilter("bb_admin_verify_field_before_ajax",Jt,(function(e,t,n){return t&&$t===t.name&&(e.append("captcha_response",Zt),e.append("bb_recaptcha_version",n&&n.bb_recaptcha_version||"recaptcha_v3")),e}));const Xt=window.wp.hooks;var Qt=["bb-pusher-app-id","bb-pusher-app-key","bb-pusher-app-secret","bb-pusher-app-cluster"];function en(e,t){var n=document.querySelector('input[name="'+e+'"], select[name="'+e+'"], textarea[name="'+e+'"]'),a=n&&n.value||"";return a||(a=t&&t[e]?t[e]:""),String(a).trim()}(0,Xt.addFilter)("bb_admin_verify_field_button_disabled","buddyboss/pusher-verify",(function(e,t,n,a){return t&&"_bb_pusher_verify"===t.name&&e?"custom"===en("bb-pusher-app-cluster",a)?e:!Qt.every((function(e){return!!en(e,a)})):e}));const tn=(0,s.lazy)((()=>Promise.resolve().then(i.t.bind(i,4836,23)).then((e=>({default:e.KnowledgeBaseModal})))));function nn(){const{open:e,state:t}=(0,rt.useKb)(),[n,a]=(0,s.useState)("/settings"),[r,i]=(0,s.useState)(!0),c=(0,s.useCallback)(((e,t)=>(0,d.ZU)("bb_admin_search_settings",{query:e},{signal:t}).then((e=>e.success&&e.data?.results||[]))),[]),u=(0,s.useCallback)((e=>a(e.route)),[]);return(0,s.useEffect)((()=>{"undefined"!=typeof window&&window.bbAdminData&&window.bbAdminData.helpContentCacheFlushSignal&&Qe()}),[]),(0,s.useEffect)((()=>{!function(e){var t=document.getElementById("toplevel_page_buddyboss-platform");if(t){var n,a=e.replace(/^\//,"").split("/"),r=a[0]||"",i="settings"===r?a[1]||"":r,o="settings"===r?a[2]||"":a[1]||"",s={groups:["all_groups","group_types","group_navigation"],activity:["all_activities"],members:["profile_fields","profile_types","profile_search","profile_navigation"],forums:["all_forums","discussions","discussion_tags","replies"],emails:["all_emails"]},l=!1;s[i]&&(l=-1!==s[i].indexOf(o)),"settings"===r||"activity"!==r&&"groups"!==r&&"forums"!==r||(l=!0),n=l||"settings"===r&&-1!==["help"].indexOf(i)?i:"settings";var c=t.querySelectorAll("ul.wp-submenu li"),d=null,u=null,b=null;if(c.forEach((function(e){var t=e.querySelector("a");if(t){var a=t.getAttribute("href")||"";if(-1!==a.indexOf("page=bp-settings")&&(u=e),"admin.php?page=bb-settings"===a&&(b=e),"settings"!==n){var r={members:"bp-profile-setup"}[n]||"bp-"+n;-1!==a.indexOf("page="+r)&&(d=e),d||"forums"!==n||-1===a.indexOf("post_type=forum")||(d=e),d||-1===a.indexOf("tab="+n)||(d=e)}}})),"settings"===n&&(d=u||b),d||(d=b||u),d){c.forEach((function(e){e.classList.remove("current");var t=e.querySelector("a");t&&(t.classList.remove("current"),t.removeAttribute("aria-current"))})),d.classList.add("current");var m=d.querySelector("a");m&&(m.classList.add("current"),m.setAttribute("aria-current","page"))}}}(n)}),[n]),(0,s.useEffect)((()=>{t.isOpen&&window.DocsBotAI&&"function"==typeof window.DocsBotAI.close&&window.DocsBotAI.close()}),[t.isOpen]),(0,s.useEffect)((()=>{"undefined"!=typeof window&&"function"==typeof window.scrollTo&&window.scrollTo(0,0)}),[n]),(0,s.useEffect)((()=>{const e=new URLSearchParams(window.location.search),t=e.get("page"),n=e.get("tab"),r=e.get("panel");e.get("field");let o="/settings";if("bb-settings"===t)if(n)o=`/settings/${n}`,r&&(o+=`/${r}`);else{o=window.location.hash.replace("#","")||"/settings"}else if("bp-settings"===t&&n){const e={"bp-activity":"activity","bp-groups":"groups","bp-messages":"messages","bp-media":"media","bp-video":"video","bp-document":"document","bp-forums":"forums","bp-friends":"friends","bp-notifications":"notifications","bp-invites":"invites","bp-moderation":"moderation","bp-search":"search","bp-xprofile":"xprofile","bp-registration":"registration","bp-performance":"performance","bp-general":"general","bp-credit":"credit"}[n]||n.replace("bp-","");if(o=`/settings/${e}`,r&&(o+=`/${r}`),window.history.replaceState){const t=new URLSearchParams;t.set("page","bb-settings"),t.set("tab",e),r&&t.set("panel",r);const n=window.location.pathname+"?"+t.toString();window.history.replaceState({},"",n)}}else if("bp-activity"===t)o="/activity/all";else if("bp-groups"===t){const t=e.get("gid"),n=e.get("action");o=t&&"edit"===n?`/groups/${t}/edit`:"/groups/all"}else if("bp-components"===t)o="/settings";else if("bp-integrations"===t)o="/settings";else{const e=window.location.hash.replace("#","");e&&(o=e)}a(o),i(!1);const s=()=>{const e=new URLSearchParams(window.location.search),t=e.get("page"),n=e.get("tab"),r=e.get("panel");if("bb-settings"===t)if(n){let e=`/settings/${n}`;r&&(e+=`/${r}`),a(e)}else{const e=window.location.hash.replace("#","");a(e||"/settings")}},l=()=>{const e=window.location.hash.replace("#","");e&&a(e)};return window.addEventListener("popstate",s),window.addEventListener("hashchange",l),()=>{window.removeEventListener("popstate",s),window.removeEventListener("hashchange",l)}}),[]),r?(0,o.createElement)("div",{className:"bb-admin-loading"},(0,o.createElement)("span",{className:"spinner is-active"})):(0,o.createElement)("div",{className:"bb-admin-app"},(0,o.createElement)("a",{href:"#bb-admin-settings-main",className:"screen-reader-shortcut"},(0,l.__)("Skip to settings content","buddyboss")),(0,o.createElement)(rt.BBAdminHeader,{logoUrl:"undefined"!=typeof bbAdminData&&bbAdminData.logoUrl||"",ipnRootId:"undefined"!=typeof bbAdminData&&bbAdminData.ipnRootId||"",onSearch:c,onSelectResult:u,onHelp:e}),(0,o.createElement)("div",{id:"bb-admin-settings-main",tabIndex:"-1"},(0,o.createElement)(qt,{currentRoute:n,onNavigate:a})),t.isOpen&&(0,o.createElement)(s.Suspense,{fallback:null},(0,o.createElement)(tn,null)))}class an extends s.Component{constructor(e){super(e),this.state={hasError:!1,error:null}}static getDerivedStateFromError(e){return{hasError:!0,error:e}}componentDidCatch(e,t){"undefined"!=typeof console&&console.error("[BuddyBoss Settings 2.0] Rendering error:",e,t)}handleRetry=()=>{this.setState({hasError:!1,error:null})};render(){return this.state.hasError?(0,o.createElement)("div",{className:"bb-admin-error-boundary"},(0,o.createElement)("div",{className:"bb-admin-error-boundary__content"},(0,o.createElement)("h2",null,(0,l.__)("Something went wrong","buddyboss")),(0,o.createElement)("p",null,(0,l.__)("An error occurred while loading the settings. Please try refreshing the page.","buddyboss")),this.state.error&&window.bbAdminData?.debug&&(0,o.createElement)("pre",{className:"bb-admin-error-boundary__details"},this.state.error.toString()),(0,o.createElement)("div",{className:"bb-admin-error-boundary__actions"},(0,o.createElement)("button",{type:"button",className:"button button-primary",onClick:this.handleRetry},(0,l.__)("Try Again","buddyboss")),(0,o.createElement)("button",{type:"button",className:"button",onClick:()=>window.location.reload()},(0,l.__)("Reload Page","buddyboss"))))):this.props.children}}function rn(e){return e?((new DOMParser).parseFromString(String(e),"text/html").body.textContent||"").replace(/\s+/g," ").trim():""}function on({variant:e,results:t,onCancel:n,onClose:a}){return"progress"===e?(0,o.createElement)(c.Modal,{title:(0,l.__)("Repair Community","buddyboss"),onRequestClose:n,className:"bb-tools-repair-modal is-progress bb-admin-settings-modal",shouldCloseOnClickOutside:!1},(0,o.createElement)("div",{className:"bb-tools-repair-modal__body bb-admin-settings-modal__body"},(0,o.createElement)("span",{className:"bb-tools-repair-modal__icon bb-icons-rl bb-icons-rl-wrench"}),(0,o.createElement)("div",{className:"bb-tools-repair-modal__status"},(0,o.createElement)("p",null,(0,l.__)("Repairing Community","buddyboss")),(0,o.createElement)(c.Spinner,null))),(0,o.createElement)("div",{className:"bb-tools-repair-modal__actions bb-admin-settings-modal__footer"},(0,o.createElement)(c.Button,{variant:"primary",onClick:n},(0,l.__)("Cancel","buddyboss")))):(0,o.createElement)(c.Modal,{title:(0,l.__)("Repair Community","buddyboss"),onRequestClose:a,className:"bb-tools-repair-modal bb-admin-settings-modal is-complete",shouldCloseOnClickOutside:!1},(0,o.createElement)("div",{className:"bb-tools-repair-modal__body"},(0,o.createElement)("div",{className:"bb-tools-repair-modal__checkmark"},(0,o.createElement)("span",{className:"bb-icons-rl bb-icons-rl-check-circle"})),(0,o.createElement)("h3",null,(0,l.__)("Repair community complete","buddyboss")),(0,o.createElement)("ul",{className:"bb-tools-repair-modal__results"},(t||[]).map((function(e){const t=function(e){if(!e.success)return"error";const t=rn(e.message),n=t.match(/\b(\d+)\s*\/\s*(\d+)\b/);if(n){const e=parseInt(n[1],10),t=parseInt(n[2],10);if(0===e&&t>0)return"error";if(e0})).sort((function(e,t){return(e.order||0)-(t.order||0)}))}),[t,n]),N=(0,s.useCallback)((function(e,t){b((function(n){const a=new Set(n);return t?a.add(e):a.delete(e),a}))}),[]),C=(0,s.useCallback)((function(e){b(e?new Set(t.map((function(e){return e.id}))):new Set)}),[t]),x=(0,s.useCallback)((async function(){if(0===u.size)return;if(a&&""===m)return void h((0,l.__)("Please select a site before repairing.","buddyboss"));h(null),v([]),_("progress");const e=new AbortController;E.current=e;const n=[],r={};t.forEach((function(e){r[e.id]=e}));for(const t of u){const o=r[t];if(!o)continue;const s=i[o.nonce]||i.repair,c=o.endpoint||"bp_admin_repair_tools_wrapper_function";try{const r=1e4;let i=0,u=null;for(let n=0;n0&&n.append("offset",String(i)),a&&m&&n.append("site_id",m);const r=await fetch(d,{method:"POST",body:n,credentials:"same-origin",signal:e.signal});if(u=await r.json(),!u||!u.success)break;const o=u.data||{};if("running"!==o.status)break;const l="number"==typeof o.offset?o.offset:Number(o.offset);if(!(l>i))break;i=l}n.push({id:t,label:o.label,success:!(!u||!u.success),message:u&&u.data&&u.data.message||(u&&u.success?(0,l.__)("Repaired","buddyboss"):(0,l.__)("Failed","buddyboss")),count:u&&u.data&&void 0!==u.data.count?u.data.count:null,summary:u&&u.data&&u.data.summary||"",summary_html:u&&u.data&&u.data.summary_html||""})}catch(e){if("AbortError"===e.name)return void _(null);n.push({id:t,label:o.label,success:!1,message:(0,l.__)("Network error","buddyboss")})}}v(n),_("complete")}),[u,m,a,t,i,d]),k=(0,s.useCallback)((function(){E.current&&E.current.abort(),_(null)}),[]),S=(0,s.useCallback)((function(){_(null),v([]),b(new Set)}),[]),A=u.size===t.length&&t.length>0;return(0,o.createElement)("div",{className:"bb-tools-repair-platform"},a&&(0,o.createElement)("div",{className:"bb-tools-repair-platform__site-selector"},(0,o.createElement)(c.SelectControl,{label:(0,l.__)("Select a site to repair","buddyboss"),value:m,options:[{value:"",label:(0,l.__)("— Select a site —","buddyboss")}].concat(r.map((function(e){return{value:String(e.blog_id),label:e.domain+e.path}}))),onChange:p})),y&&(0,o.createElement)(c.Notice,{status:"error",isDismissible:!0,onRemove:function(){h(null)}},y),(0,o.createElement)("div",{className:"bb-tools-repair-platform__select-all"},(0,o.createElement)(c.CheckboxControl,{label:(0,l.__)("Select All","buddyboss"),checked:A,onChange:C})),w.map((function(e){return(0,o.createElement)("div",{key:e.id,className:"bb-tools-repair-platform__section"},(0,o.createElement)("div",{className:"bb-tools-repair-platform__section-heading"},(0,o.createElement)("span",{className:"bb-tools-repair-platform__section-title"},e.label)),(0,o.createElement)("div",{className:"bb-tools-repair-platform__section-items"},e.items.map((function(e){return(0,o.createElement)(c.CheckboxControl,{key:e.id,label:e.label,checked:u.has(e.id),onChange:function(t){N(e.id,t)}})}))))})),(0,o.createElement)("div",{className:"bb-tools-repair-platform__actions"},(0,o.createElement)(c.Button,{variant:"primary",onClick:x,disabled:0===u.size},(0,l.__)("Repair Items","buddyboss"))),"progress"===f&&(0,o.createElement)(on,{variant:"progress",onCancel:k}),"complete"===f&&(0,o.createElement)(on,{variant:"complete",results:g,onClose:S}))}function ln(){const[e,t]=(0,s.useState)("loading"),[n,a]=(0,s.useState)(!1),[r,i]=(0,s.useState)(null),[d,u]=(0,s.useState)(""),b=(0,s.useRef)(null),m=window.bbAdminData&&window.bbAdminData.ajaxUrl||window.ajaxurl;(0,s.useEffect)((function(){const e=new AbortController;b.current=e;const n=new FormData;return n.append("action","bb_tools_check_plugin_state"),n.append("_ajax_nonce",window.bbAdminData&&window.bbAdminData.ajaxNonce||""),fetch(m,{method:"POST",body:n,signal:e.signal,credentials:"same-origin"}).then((function(e){return e.json()})).then((function(e){e&&e.success&&e.data?(t(e.data.state),e.data.license_url&&u(e.data.license_url)):t("not-installed")})).catch((function(e){"AbortError"!==e.name&&t("not-installed")})),function(){b.current&&b.current.abort()}}),[]);const p=(0,s.useCallback)((function(){if(n)return;a(!0),i(null),b.current&&b.current.abort();const t=new AbortController;b.current=t;const r="installed"===e?"bb_tools_activate_plugin":"bb_tools_install_plugin",o=new FormData;o.append("action",r),o.append("_ajax_nonce",window.bbAdminData&&window.bbAdminData.ajaxNonce||""),fetch(m,{method:"POST",body:o,credentials:"same-origin",signal:t.signal}).then((function(e){return e.json()})).then((function(e){if(e&&e.success)window.location.reload();else{const t=e&&e.data&&e.data.message||(0,l.__)("Operation failed. Please try again.","buddyboss");i(t),a(!1)}})).catch((function(e){e&&"AbortError"===e.name||(i((0,l.__)("Network error. Please try again.","buddyboss")),a(!1))}))}),[e,n]);if("loading"===e)return(0,o.createElement)("div",{className:"bb-tools-activation-cta is-loading"},(0,o.createElement)(c.Spinner,null));if("active"===e)return(0,o.createElement)("div",{className:"bb-tools-activation-cta"},(0,o.createElement)("div",{className:"bb-tools-activation-cta__icon"},(0,o.createElement)("span",{className:"bb-icons-rl bb-icons-rl-info"})),(0,o.createElement)("h2",{className:"bb-tools-activation-cta__title"},(0,l.__)("Coming Soon","buddyboss")),(0,o.createElement)("p",{className:"bb-tools-activation-cta__description"},(0,l.__)("The BuddyBoss Tools addon is installed, but this feature is not yet available. Update the addon to use it.","buddyboss")));if("needs-license"===e)return(0,o.createElement)("div",{className:"bb-tools-activation-cta"},(0,o.createElement)("div",{className:"bb-tools-activation-cta__icon"},(0,o.createElement)("span",{className:"bb-icons-rl bb-icons-rl-info"})),(0,o.createElement)("h2",{className:"bb-tools-activation-cta__title"},(0,l.__)("License Required","buddyboss")),(0,o.createElement)("p",{className:"bb-tools-activation-cta__description"},(0,l.__)("Please activate your BuddyBoss license to install and use this feature.","buddyboss")),(0,o.createElement)(c.Button,{variant:"primary",href:d||"#"},(0,l.__)("Activate License","buddyboss")));const f="installed"===e?(0,l.__)("Activate Now","buddyboss"):(0,l.__)("Install Now","buddyboss");return(0,o.createElement)("div",{className:"bb-tools-activation-cta"},(0,o.createElement)("div",{className:"bb-tools-activation-cta__icon"},(0,o.createElement)("span",{className:"bb-icons-rl bb-icons-rl-info"})),(0,o.createElement)("h2",{className:"bb-tools-activation-cta__title"},(0,l.__)("Activation Required","buddyboss")),(0,o.createElement)("p",{className:"bb-tools-activation-cta__description"},(0,l.__)("Please activate the BuddyBoss Tools addon to use this feature.","buddyboss")),r&&(0,o.createElement)("div",{className:"bb-admin-notice bb-admin-notice--error"},r),(0,o.createElement)(c.Button,{variant:"primary",onClick:p,disabled:n},f))}(0,Xt.addFilter)("bb_admin_settings_custom_field","buddyboss-platform/tools-repair-platform",(function(e,t){return t&&"bb_tools_repair_platform"===t.type?(0,o.createElement)(sn,null):e})),(0,Xt.addFilter)("bb_admin_settings_custom_field","buddyboss-platform/tools-sample-data-fallback",(function(e,t){return t&&"bb_tools_sample_data"===t.type?e||((0,Xt.hasFilter)("bb_admin_settings_custom_field","buddyboss-tools/sample-data")?e:(0,o.createElement)(ln,null)):e}),99),(0,Xt.addFilter)("bb_admin_settings_custom_field","buddyboss-platform/tools-migration-tools-fallback",(function(e,t){return t&&"bb_tools_migration_tools"===t.type?e||((0,Xt.hasFilter)("bb_admin_settings_custom_field","buddyboss-tools/migration-tools")?e:(0,o.createElement)(ln,null)):e}),99);const cn=document.getElementById("bb-admin-settings");cn&&(0,s.createRoot)(cn).render((0,o.createElement)(an,null,(0,o.createElement)((function(){return(0,o.createElement)(rt.KbProvider,null,(0,o.createElement)(nn,null))}),null)))})(); \ No newline at end of file diff --git a/src/js/admin/settings/components/access-control/AccessControlField.js b/src/js/admin/settings/components/access-control/AccessControlField.js index 45bcd2e795..9823d1e01f 100644 --- a/src/js/admin/settings/components/access-control/AccessControlField.js +++ b/src/js/admin/settings/components/access-control/AccessControlField.js @@ -16,7 +16,7 @@ * @since BuddyBoss [BBVERSION] */ -import { useState, useRef, RawHTML } from '@wordpress/element'; +import { useState, useRef, useEffect, RawHTML } from '@wordpress/element'; import { CheckboxControl, SelectControl, ToggleControl, Spinner } from '@wordpress/components'; import { __ } from '@wordpress/i18n'; import { decodeEntities } from '@wordpress/html-entities'; @@ -45,13 +45,17 @@ function initPerOptionSettings( selectedOpts, serverPerOption, savedValue ) { var subKey = 'access-control-' + optKey + '-options'; var subData = null; - // Try server-provided per_option_settings first. - if ( serverPerOption && serverPerOption[ optKey ] ) { - subData = serverPerOption[ optKey ]; - } - // Fallback to saved value sub-keys. - else if ( savedValue && savedValue[ subKey ] ) { + // Prefer the actually-saved value over the server enrichment. The + // enrichment (per_option_settings) is computed server-side and travels + // in the feature cache, so after a rapid change it can be stale for + // this option, whereas the saved value is exactly what the user last + // persisted. Same "trust saved value over enrichment" rule this + // component applies to type/sub-type/options; falling back to the + // enrichment only when the saved value has no sub-key for this option. + if ( savedValue && undefined !== savedValue[ subKey ] ) { subData = savedValue[ subKey ]; + } else if ( serverPerOption && serverPerOption[ optKey ] ) { + subData = serverPerOption[ optKey ]; } if ( subData && Array.isArray( subData ) && subData.indexOf( 'all' ) !== -1 ) { @@ -80,21 +84,80 @@ export function AccessControlField( { field, value, onChange } ) { var types = wp.hooks.applyFilters( 'bb.accessControl.types', data.types || [], field ); var isThreaded = !! field.threaded; + /** + * Whether a type config is a grouped type (has selectable sub-types). + * Single source of truth for the mount heal AND both change handlers — + * Pro emits `sub_types` as an empty PHP array (JSON `[]`, truthy in JS) + * for non-grouped cases, so a bare truthiness check misclassifies. + * + * @since BuddyBoss [BBVERSION] + * + * @param {Object} cfg Type config from the types array. + * @return {boolean} True when the type has selectable sub-types. + */ + var isGroupedTypeConfig = function( cfg ) { + return !! ( cfg && cfg.sub_types && cfg.sub_types.items && cfg.sub_types.items.length > 0 ); + }; + + // An object value without a type means the rule was explicitly cleared + // through this UI (buildValue always emits an object, and the save echo + // caches it as such). A non-object value ('' — the never-saved default) + // falls back to the enrichment, which is computed from the same stored + // option and is therefore consistent on fresh data. + var isClearedValue = !! ( value && 'object' === typeof value && ! value[ 'access-control-type' ] ); + // State. - var [ selectedType, setSelectedType ] = useState( value?.[ 'access-control-type' ] || data.current_type || '' ); + var [ selectedType, setSelectedType ] = useState( function() { + if ( value && value[ 'access-control-type' ] ) { + return value[ 'access-control-type' ]; + } + // Explicitly cleared — render the placeholder rather than resurrecting + // the enrichment's type, which can be stale on cached SPA re-entry. + if ( value && 'object' === typeof value ) { + return ''; + } + return data.current_type || ''; + } ); var [ selectedSubType, setSelectedSubType ] = useState( function() { - // Determine initial sub-type from saved value using the sub-type key from PHP. + // Resolve the sub-type key for the SAVED type from the types config — + // the same trusted source buildValue() uses. The enrichment's + // current_sub_type_key exists only when a sub-type was already stored + // at panel-fetch time, so after the first-ever provider save (or a + // grouped-type switch) a stale cached enrichment carries no key — or + // another grouped type's key — and the value lookup would miss the + // saved provider, then the next save would silently erase it. + var savedType = value && value[ 'access-control-type' ]; + if ( savedType ) { + for ( var i = 0; i < types.length; i++ ) { + if ( types[ i ].value === savedType ) { + var cfgKey = types[ i ].sub_types && types[ i ].sub_types.key; + if ( cfgKey && value[ cfgKey ] ) { + return value[ cfgKey ]; + } + break; + } + } + } + // Fallback: enrichment-provided key (fresh-data path). if ( data.current_sub_type_key && value?.[ data.current_sub_type_key ] ) { return value[ data.current_sub_type_key ]; } + // Mirror the type initializer: an explicitly cleared (object) value + // must not resurrect the (possibly stale cached) enrichment sub-type. + if ( value && 'object' === typeof value ) { + return ''; + } return data.current_sub_type || ''; } ); - var [ options, setOptions ] = useState( data.options || [] ); + // A cleared rule must not render the stale enrichment's options list — + // the toggle list renders purely on options.length, so stale options + // under a placeholder type would invite toggling a dead rule into storage. + var [ options, setOptions ] = useState( isClearedValue ? [] : ( data.options || [] ) ); // Recipient list for threaded "Specific" checkboxes: the FULL role set // (includes administrators + the sender's own role), unlike `options` which // is the admin-excluded sender list. Falls back to `options` when the server // provides no separate recipient list (legacy parity — see renderThreadedCheckboxes). - var [ recipientOptions, setRecipientOptions ] = useState( data.recipient_options || data.options || [] ); + var [ recipientOptions, setRecipientOptions ] = useState( isClearedValue ? [] : ( data.recipient_options || data.options || [] ) ); var [ selectedOptions, setSelectedOptions ] = useState( value?.[ 'access-control-options' ] || [] ); var [ loading, setLoading ] = useState( false ); var [ fetchError, setFetchError ] = useState( '' ); @@ -123,6 +186,96 @@ export function AccessControlField( { field, value, onChange } ) { return null; }; + // Self-heal a stale options list on mount. `data.options` comes from the + // server enrichment captured when the panel payload was fetched (and is + // served cache-first on SPA re-entry). Rapid selection changes fire + // multiple debounced saves whose responses can update that cache out of + // order, leaving enrichment computed for a different type than the saved + // value (e.g. type shows "Profile Type" but the options list still holds + // membership plans). When the enrichment's current type disagrees with + // the saved value's type, refetch the options for the saved selection. + useEffect( function() { + // The enrichment options are computed from type + sub-type, so a + // provider-only switch (same type, different sub-type) also leaves + // stale options in the cached payload — compare both. + if ( + ! selectedType || + ( + ( data.current_type || '' ) === selectedType && + ( data.current_sub_type || '' ) === ( selectedSubType || '' ) + ) + ) { + return undefined; + } + + var typeConfig = getSelectedTypeConfig(); + var action = 'get_access_control_level_options'; + var fetchValue = selectedType; + + if ( isGroupedTypeConfig( typeConfig ) ) { + if ( ! selectedSubType || ! typeConfig.sub_types.action ) { + setOptions( [] ); + setRecipientOptions( [] ); + return undefined; + } + action = typeConfig.sub_types.action; + fetchValue = selectedSubType; + } + + var controller = new AbortController(); + abortRef.current = controller; + setLoading( true ); + // The displayed options belong to the enrichment's (different) type; if + // this refetch fails they must not stay rendered and toggleable under + // the saved selection — a toggle would persist another type's option + // keys into this rule. Clear them so the error state shows alone. + setOptions( [] ); + setRecipientOptions( [] ); + + ajaxFetch( action, { + value: fetchValue, + key: field.name, + format: 'json', + }, { signal: controller.signal } ).then( function( response ) { + var newOptions = response?.data?.options || []; + // Match the handlers' filter signatures: 3 args for direct types + // (handleTypeChange), 4 for grouped types (handleSubTypeChange). + if ( selectedSubType ) { + newOptions = wp.hooks.applyFilters( 'bb.accessControl.options', newOptions, field, selectedType, selectedSubType ); + } else { + newOptions = wp.hooks.applyFilters( 'bb.accessControl.options', newOptions, field, selectedType ); + } + setOptions( newOptions ); + setRecipientOptions( response?.data?.recipient_options || response?.data?.options || [] ); + setLoading( false ); + } ).catch( function( error ) { + if ( error && 'AbortError' === error.name ) { + return; + } + setLoading( false ); + setFetchError( __( 'Failed to load options. Please try again.', 'buddyboss' ) ); + } ); + + return function() { + controller.abort(); + }; + // Mount-only heal: the stale-enrichment condition can only exist at mount. + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [] ); + + // Abort whatever options fetch is in flight when the field unmounts. The + // heal effect's cleanup only covers its own controller; fetches started by + // the change handlers live solely in abortRef and would otherwise run to + // completion against an unmounted instance (harmless no-op setState in + // React 18, but a wasted request worth cancelling). + useEffect( function() { + return function() { + if ( abortRef.current ) { + abortRef.current.abort(); + } + }; + }, [] ); + /** * Build the saved value object including sub-type key and per-option sub-keys. * @@ -183,6 +336,15 @@ export function AccessControlField( { field, value, onChange } ) { // Reset to placeholder — save to clear the setting. if ( ! newType ) { + // Kill any in-flight options fetch (mount heal or a prior change) + // so a late response can't repaint the old type's options. The + // aborted fetch's catch early-returns on AbortError, so clear the + // loading/error state here or the spinner would stick forever. + if ( abortRef.current ) { + abortRef.current.abort(); + } + setLoading( false ); + setFetchError( '' ); setOptions( [] ); setRecipientOptions( [] ); onChange( { @@ -202,15 +364,35 @@ export function AccessControlField( { field, value, onChange } ) { } // If this type has sub-types, don't fetch options yet — wait for sub-type selection. - if ( typeConfig && typeConfig.sub_types && typeConfig.sub_types.items && typeConfig.sub_types.items.length > 0 ) { + if ( isGroupedTypeConfig( typeConfig ) ) { + // Kill any in-flight options fetch so a late response can't + // repaint the previous type's options under the grouped type, + // and clear loading/error state the aborted catch won't touch. + if ( abortRef.current ) { + abortRef.current.abort(); + } + setLoading( false ); + setFetchError( '' ); setOptions( [] ); setRecipientOptions( [] ); + + // Persist the type switch so the previous rule stops enforcing. + onChange( buildValue( newType, '', [], {} ) ); return; } + // Persist the type switch so the previous rule stops enforcing. + onChange( buildValue( newType, '', [], {} ) ); + // Direct type — fetch options via AJAX. setLoading( true ); setFetchError( '' ); + // Clear the previous type's lists before fetching: if this fetch fails, + // the toggle list must not keep rendering the old type's options under + // the new selection — toggling one would save another type's option + // keys into this rule. + setOptions( [] ); + setRecipientOptions( [] ); // Cancel any in-flight request before starting a new one. if ( abortRef.current ) { @@ -250,14 +432,36 @@ export function AccessControlField( { field, value, onChange } ) { var typeConfig = getSelectedTypeConfig(); - if ( ! newSubType || ! typeConfig || ! typeConfig.sub_types ) { + if ( ! newSubType || ! isGroupedTypeConfig( typeConfig ) ) { + // Kill any in-flight options fetch so a late response can't + // repaint the previous provider's options under the placeholder, + // and clear loading/error state the aborted catch won't touch. + if ( abortRef.current ) { + abortRef.current.abort(); + } + setLoading( false ); + setFetchError( '' ); setOptions( [] ); setRecipientOptions( [] ); + + // Persist the cleared sub-type so the previous rule stops enforcing. + onChange( buildValue( selectedType, '', [], {} ) ); return; } + // Persist the sub-type switch immediately — without this, changing the + // provider alone never saves and the previous provider's rule keeps + // enforcing silently until an option is toggled. + onChange( buildValue( selectedType, newSubType, [], {} ) ); + setLoading( true ); setFetchError( '' ); + // Clear the previous provider's lists before fetching: if this fetch + // fails, the toggle list must not keep rendering the old provider's + // options under the new selection — toggling one would save another + // provider's option keys into this rule. + setOptions( [] ); + setRecipientOptions( [] ); // Cancel any in-flight request before starting a new one. if ( abortRef.current ) { @@ -356,7 +560,7 @@ export function AccessControlField( { field, value, onChange } ) { // Get current type config for rendering sub-type dropdown. var currentTypeConfig = getSelectedTypeConfig(); - var hasSubTypes = currentTypeConfig && currentTypeConfig.sub_types && currentTypeConfig.sub_types.items && currentTypeConfig.sub_types.items.length > 0; + var hasSubTypes = isGroupedTypeConfig( currentTypeConfig ); var showNoOptions = ! loading && selectedType && options.length === 0; // For grouped types, only show "no options" if a sub-type is selected. diff --git a/src/js/admin/settings/components/reaction/applyReactionPostSave.js b/src/js/admin/settings/components/reaction/applyReactionPostSave.js index 33cc10b0d1..02507a0ceb 100644 --- a/src/js/admin/settings/components/reaction/applyReactionPostSave.js +++ b/src/js/admin/settings/components/reaction/applyReactionPostSave.js @@ -36,14 +36,31 @@ function injectMigrationDataIntoPanels(panels, migrationData, migrationStatus) { * Apply reactions-specific post-save behavior. * Call only when featureId === 'reactions'; caller (FeatureSettingsScreen) performs that check. * - * @param {Object} response Save API response (response.data may have migration_data, migration_status) - * @param {Object} fieldsToSave The payload that was saved (e.g. { reaction_items, reaction_checks, bb_reaction_mode }) - * @param {string} featureId Feature ID (used for refetch and cache keys) - * @param {Object} context Helpers: ajaxFetch, getCachedFeatureData, setCachedFeatureData, setFeature, setSidePanels, setSettings, setOriginalSettings + * Cache reconciliation runs regardless of supersession or navigation — like + * every other feature's cache write, it must happen even when the response was + * superseded or the admin navigated away, or the reactions cache would serve + * pre-edit values on the next cache-first render. The one exception is the + * items branch when claimItemsRefetchWrite() returns false: a NEWER save's + * refetch already wrote fresher data, so this older refetch is discarded whole + * (writing it would be the bug). Screen state (feature/panels/settings) is + * applied only when shouldApplyScreen() passes; it is re-evaluated after the + * async refetch resolves so a navigation during the refetch round-trip is also + * respected. + * + * @since BuddyBoss [BBVERSION] Added the `shouldApplyScreen`, `isLatestSave`, `claimItemsRefetchWrite` and `isFeatureDisplayed` parameters. + * + * @param {Object} response Save API response (response.data may have migration_data, migration_status) + * @param {Object} fieldsToSave The payload that was saved (e.g. { reaction_items, reaction_checks, bb_reaction_mode }) + * @param {string} featureId Feature ID (used for refetch and cache keys) + * @param {Object} context Helpers: ajaxFetch, getCachedFeatureData, setCachedFeatureData, invalidateFeatureCache, setFeature, setSidePanels, setSettings, setOriginalSettings + * @param {Function} shouldApplyScreen Returns true when screen state may be applied (response not superseded, feature still displayed). Defaults to always-true. + * @param {Function} isLatestSave Returns true when this save is still the feature's newest dispatch. Gates how the ASYNC refetch writes the cache: the refetch runs outside the single-flight channel, so an earlier save's slower refetch must not overwrite a newer save's cache state. Defaults to always-true. + * @param {Function} claimItemsRefetchWrite Atomically claims the right to write this items-refetch's result: returns false when a NEWER save's refetch already wrote. The caller backs this with state on the save channel so it shares the exact lifetime of the `channel.seq` counter it orders — the channel map is module-scoped, so both survive full screen remounts together and the ordering holds across grid round-trips. Keeping claim state and counter on the SAME object is load-bearing; splitting their lifetimes fails one of two ways: (a) claim state outliving the counter (e.g. module ledger + per-mount seq) leaves a stale high-water mark that wrongly rejects every refetch of a fresh session, so new item IDs never reach the cache; (b) the counter outliving the claim state (per-mount ledger + module seq) lets an OLDER save's slower refetch resolve after a newer one across a remount and full-replace the newer write with pre-save data. Defaults to always-true. + * @param {Function} isFeatureDisplayed Returns true when this feature is the one currently mounted on screen. Used ONLY by the superseded items-refetch branch to land real DB IDs on the live screen: shouldApplyScreen() can't be reused there because it also requires the save to be the latest (false by definition when superseded), yet the ID reconciliation must still reach the screen the admin is looking at. Defaults to always-false so callers that omit it keep the pre-fix cache-only behavior. */ -export function applyReactionPostSave(response, fieldsToSave, featureId, context) { +export function applyReactionPostSave(response, fieldsToSave, featureId, context, shouldApplyScreen = () => true, isLatestSave = () => true, claimItemsRefetchWrite = () => true, isFeatureDisplayed = () => false) { if ( process.env.NODE_ENV !== 'production' ) { - const requiredContextKeys = [ 'ajaxFetch', 'getCachedFeatureData', 'setCachedFeatureData', 'setFeature', 'setSidePanels', 'setSettings', 'setOriginalSettings' ]; + const requiredContextKeys = [ 'ajaxFetch', 'getCachedFeatureData', 'setCachedFeatureData', 'invalidateFeatureCache', 'setFeature', 'setSidePanels', 'setSettings', 'setOriginalSettings' ]; requiredContextKeys.forEach( ( key ) => { if ( typeof context[ key ] !== 'function' ) { // eslint-disable-next-line no-console @@ -85,12 +102,89 @@ export function applyReactionPostSave(response, fieldsToSave, featureId, context ), }; } + // This refetch runs outside the single-flight channel, so writes + // must be ordered manually. The claim (backed by state on the + // module-scoped save channel, so it stays monotonic with + // channel.seq across full remounts) rejects an older items-save's + // refetch resolving after a newer one wrote. + if (!claimItemsRefetchWrite()) { + return; + } + + // Superseded by a NEWER save (e.g. a mode change, whose branch does + // no refetch of its own): a full-replace here would clobber that + // save's cache effects with pre-save server state — but silently + // discarding the refetch would strand the temporary react_key_ + // item IDs in the cache forever. Land ONLY reaction_items (the + // data this refetch exists to deliver) on top of the current cache. + if (!isLatestSave()) { + const current = context.getCachedFeatureData(featureId); + const hasFreshItems = current && updatedData.settings && undefined !== updatedData.settings.reaction_items; + if (hasFreshItems) { + context.setCachedFeatureData(featureId, { + ...current, + settings: { ...current.settings, reaction_items: updatedData.settings.reaction_items }, + }); + } + // Also land the real DB IDs on the LIVE screen when this feature + // is still displayed. The cache patch alone leaves the mounted + // screen holding the temporary react_key_ IDs, so a subsequent + // edit/delete of that item would round-trip a fake ID to the + // server (duplicate row or silent no-op). shouldApplyScreen() + // can't gate this — it requires saveSeq === channel.seq, which is + // false here by definition (superseded) — so use the displayed- + // only gate. Narrow merge (reaction_items only): a newer save + // owns the rest of the screen state (e.g. the mode it changed). + if (hasFreshItems && isFeatureDisplayed()) { + context.setSettings((prev) => ({ ...prev, reaction_items: updatedData.settings.reaction_items })); + context.setOriginalSettings((prev) => ({ ...prev, reaction_items: updatedData.settings.reaction_items })); + } + return; + } context.setCachedFeatureData(featureId, updatedData); + if (!shouldApplyScreen()) { + return; + } context.setFeature(updatedData); context.setSidePanels(updatedData.side_panels || []); const freshSettings = updatedData.settings || {}; - context.setSettings(freshSettings); - context.setOriginalSettings(freshSettings); + // Merge ONLY reaction_items (the real DB IDs this refetch exists to + // deliver) onto the live settings — never a full replace. A full + // replace reverts a field the admin edited while this refetch was in + // flight: an edit still sitting in the 1s debounce has not advanced + // channel.seq, so shouldApplyScreen()/isLatestSave() are both still + // true, and setSettings(freshSettings) would overwrite that pending + // value with pre-edit server state until its own debounced save + // fires ~1s later. Same class as commit 074cf69 (which fixed the + // generic refetch handler but not this reactions-specific path), and + // consistent with the superseded branch above and the migration + // branch below, which both merge rather than replace. A plain + // {...prev, ...freshSettings} would NOT work here — freshSettings is + // the full server payload, so it would still clobber the pending + // field; only the targeted reaction_items key must move. + if ( undefined !== freshSettings.reaction_items ) { + context.setSettings((prev) => ({ ...prev, reaction_items: freshSettings.reaction_items })); + context.setOriginalSettings((prev) => ({ ...prev, reaction_items: freshSettings.reaction_items })); + } + }).catch(() => { + // The save itself succeeded but this refetch (the ONLY cache write + // of the items branch) failed — the cache still holds the pre-save + // reaction items, and the next panel load is cache-first, so it + // would serve them indefinitely. Drop the feature's cache entry so + // the next entry fetches fresh from the server instead. + // + // DELIBERATELY UNGUARDED by isLatestSave/claim: invalidation is a + // fail-safe (force-fresh), not an ordered data write, so + // over-invalidating is always safe — the worst case is one wasted + // refetch that returns the same correct data a newer refetch wrote. + // The alternative (guard on !isLatestSave) is NOT safe: if this + // older items-save was superseded by a mode change (which does not + // refetch), skipping invalidation would leave the temp react_key_ + // IDs from THIS failed refetch stranded in the cache. So invalidate + // unconditionally. + if (typeof context.invalidateFeatureCache === 'function') { + context.invalidateFeatureCache(featureId); + } }); return; } @@ -98,20 +192,24 @@ export function applyReactionPostSave(response, fieldsToSave, featureId, context if (hasMigrationResponse) { // Mode-only change - inject migration data (or clear if empty), no refetch. const inject = (panels) => injectMigrationDataIntoPanels(panels, saveMigrationData || {}, saveMigrationStatus); + + // Cache: always, and derived from the CACHED panels — not the screen's + // current feature state, which may belong to another feature when this + // response arrives after navigation. + const cachedData = context.getCachedFeatureData(featureId); + if (cachedData) { + context.setCachedFeatureData(featureId, { + ...cachedData, + side_panels: inject(cachedData.side_panels || []), + settings: { ...cachedData.settings, ...fieldsToSave }, + }); + } + + if (!shouldApplyScreen()) { + return; + } context.setSidePanels((prev) => inject(prev)); - context.setFeature((prev) => { - if (!prev) return prev; - const updatedPanels = inject(prev.side_panels || []); - const cachedData = context.getCachedFeatureData(featureId); - if (cachedData) { - context.setCachedFeatureData(featureId, { - ...cachedData, - side_panels: updatedPanels, - settings: { ...cachedData.settings, ...fieldsToSave }, - }); - } - return { ...prev, side_panels: updatedPanels }; - }); + context.setFeature((prev) => (prev ? { ...prev, side_panels: inject(prev.side_panels || []) } : prev)); // Keep local state in sync with saved values. Refetch for reactions no longer // replaces settings (it only updates panels), so this merge is still correct. context.setSettings((prev) => ({ ...prev, ...fieldsToSave })); @@ -121,7 +219,6 @@ export function applyReactionPostSave(response, fieldsToSave, featureId, context // Fallback: no reaction_items save and no migration_data (e.g. user saved bb_reaction_mode with same value). // Keep originalSettings and cache in sync with what was sent so UI and cache stay consistent. - context.setOriginalSettings((prev) => ({ ...prev, ...fieldsToSave })); const cachedData = context.getCachedFeatureData(featureId); if (cachedData) { context.setCachedFeatureData(featureId, { @@ -129,4 +226,8 @@ export function applyReactionPostSave(response, fieldsToSave, featureId, context settings: { ...cachedData.settings, ...fieldsToSave }, }); } + if (!shouldApplyScreen()) { + return; + } + context.setOriginalSettings((prev) => ({ ...prev, ...fieldsToSave })); } diff --git a/src/js/admin/settings/screens/FeatureSettingsScreen.js b/src/js/admin/settings/screens/FeatureSettingsScreen.js index 5d53bb3579..f11d82893c 100644 --- a/src/js/admin/settings/screens/FeatureSettingsScreen.js +++ b/src/js/admin/settings/screens/FeatureSettingsScreen.js @@ -56,6 +56,39 @@ const ReportedContentScreen = lazy(() => import('./ReportedContentScreen')); const EmailTemplatesListScreen = lazy(() => import('./EmailTemplatesListScreen')); const InvitesListScreen = lazy(() => import('./InvitesListScreen')); +// Per-feature single-flight save channels, keyed by featureId. MODULE-scoped — +// deliberately not component state or a ref — because a channel's job is to +// order writes whose lifetimes exceed any single mount: in-flight +// bb_admin_save_feature_settings requests, un-cancellable debounce timers, and +// the module-level feature cache all survive a full screen unmount (settings +// grid round-trip). A per-mount ref would hand a remount a fresh channel while +// the old mount's request is still in flight, letting two same-feature saves +// run concurrently (arbitrary server commit order) and letting the old +// response's cache reconciliation land after the new save's. With module +// scope, re-entering a feature reuses the surviving channel: the new edit +// queues behind the in-flight request, `channel.seq` stays monotonic for the +// feature across mounts, and `channel.itemsRefetchSeq` (reactions) shares that +// exact lifetime. Channels are per-feature, so one feature's slow save never +// blocks or misroutes another feature's queue. Screen-state application is +// routed through `channel.apply` and queue draining through `channel.drain` +// — both republished by each mount's save effect — so a response resolving in +// a dead mount's closure still reaches the same-feature mount that is alive +// at resolution time (see the comment where they are assigned). +// Null prototype: featureId comes from the URL tab param, so a crafted id like +// "constructor" must find no inherited value at saveChannels[featureId] (on a +// plain object it would, and channel state would be written onto Object). +const saveChannels = Object.create( null ); + +// The feature currently displayed by the ONE live FeatureSettingsScreen +// (Router renders at most one). Module-scoped so DEAD-mount response closures +// can consult it: each mount's per-instance displayedFeatureIdRef freezes at +// its last value after unmount, which is fine for screen setters (no-ops on an +// unmounted component) but wrong for gating the refresh_panels WINDOW EVENT — +// that event reaches whatever live listener exists, so a dead feature-A +// response would trigger a spurious refetch of the feature-B screen the admin +// is now viewing. Set by the save effect, nulled in its cleanup. +let liveFeatureId = null; + /** * Map of feature + panel combinations that render custom screens instead of settings forms. */ @@ -203,6 +236,33 @@ export function FeatureSettingsScreen({ featureId, sidePanelId, onNavigate }) { const [changedFields, setChangedFields] = useState({}); const [initialLoad, setInitialLoad] = useState(true); const debouncedSaveRef = useRef(); + // The feature currently displayed on screen. A save response whose closure + // captured a different featureId (the admin navigated away before it + // resolved, without saving on the new feature — so the seq guard alone + // would pass) must not apply screen state or toast over the new feature. + const displayedFeatureIdRef = useRef(featureId); + + // Reset per-feature unsaved-changes tracking on feature switch — otherwise + // a navigated-away feature's tracked fields ride along in the next + // feature's save payload. The server drops field names not registered for + // the submitted feature_id, but a field name shared across features would + // be silently cross-written. Pending edits are not lost: the old feature's + // already-scheduled debounce timer fires with its captured payload and + // featureId regardless of this reset. + useEffect(() => { + setChangedFields({}); + // Also clear any lingering toast from the previous feature. Without + // this, an edit's 'saving' toast survives an in-route feature switch + // forever: the navigated-away save's response skips its success toast + // (displayed-feature guard below), 'saving' never auto-dismisses, and + // it renders no dismiss button — a permanent spinner over the new + // feature. Toasts that FIRE after the switch (e.g. the old save's + // error) still display; only already-shown stale state is cleared. + setToast(null); + }, [featureId]); + // Single-flight save channels live in the module-scoped `saveChannels` + // map (see its comment above the component) so they survive full screen + // unmounts and keep same-feature saves serialized across grid round-trips. // Ref for latest settings so refetch (reactions) can update cache without replacing state. const settingsRef = useRef(settings); @@ -210,6 +270,17 @@ export function FeatureSettingsScreen({ featureId, sidePanelId, onNavigate }) { settingsRef.current = settings; }, [settings]); + // Ref mirroring changedFields so the [featureId]-scoped refetch listener can + // read the LATEST pending edits at resolution time (its handler closure + // would otherwise capture a stale changedFields). An edit still sitting in + // the 1s debounce has not advanced channel.seq, so the refetch's + // saveInterleaved guard can't see it; the ref lets the full-replace branch + // overlay it and avoid momentarily reverting the edit on screen. + const changedFieldsRef = useRef(changedFields); + useEffect(() => { + changedFieldsRef.current = changedFields; + }, [changedFields]); + // Listen for section status updates from input_button fields (e.g. GIPHY connect/disconnect). useEffect( function() { function handleStatusUpdate( event ) { @@ -396,9 +467,13 @@ export function FeatureSettingsScreen({ featureId, sidePanelId, onNavigate }) { }; // Generic event listener for refetching feature data. - // Refetch is used after dismiss/complete to refresh migration state (panels). For reactions, - // we only need updated panels (migration_data); we must not replace settings or we overwrite - // the user's mode (e.g. Likes) with stale server data. + // Refetch is used after dismiss/complete to refresh migration state (panels). + // Two cases take the panels-only branch (refresh panels, preserve current + // settings via settingsRef): (1) reactions — replacing settings would + // overwrite the user's mode (e.g. Likes) with stale server data; (2) any + // feature where a save interleaved with this GET (saveInterleaved below) — + // the GET's payload predates that save, so a full settings replace would + // revert it on screen. Otherwise the branch does a full settings replace. useEffect(() => { var refetchAbort = null; const handleRefetchFeature = () => { @@ -406,22 +481,60 @@ export function FeatureSettingsScreen({ featureId, sidePanelId, onNavigate }) { refetchAbort.abort(); } refetchAbort = new AbortController(); + // Snapshot the save channel's sequence at dispatch. This GET runs + // outside the single-flight save channel, so a save dispatched + // while it is in flight can commit AFTER the data this GET returns + // was read — full-replacing settings from that payload would + // silently revert the later save on screen and in the cache (the + // save's changedFields are already cleared, so nothing would ever + // re-save it). + var refetchChannel = saveChannels[ featureId ]; + var seqAtDispatch = refetchChannel ? ( refetchChannel.seq || 0 ) : 0; ajaxFetch('bb_admin_get_feature_settings', { feature_id: featureId }, { signal: refetchAbort.signal }) .then((response) => { if (response.success && response.data) { - if (featureId === 'reactions') { - // Refresh panels only; preserve current settings so mode doesn't flip back. + // A save dispatched (or still in flight) since this GET + // started may hold newer values than this payload — + // apply the structural refresh (panels) but preserve + // the screen's current settings, which already carry + // the newest edits/echoes in channel order. + var channelNow = saveChannels[ featureId ]; + var saveInterleaved = !! ( channelNow && ( + ( channelNow.seq || 0 ) !== seqAtDispatch || channelNow.inFlight + ) ); + if (featureId === 'reactions' || saveInterleaved) { + // Refresh panels only; preserve current settings so + // values don't flip back (reactions: mode; generic: + // any field saved during the GET round-trip). const currentSettings = settingsRef.current; setCachedFeatureData(featureId, { ...response.data, settings: currentSettings }); setFeature(response.data); setSidePanels(response.data.side_panels || []); - // Do not setSettings/setOriginalSettings – refetch is for migration state only. + // Do not setSettings/setOriginalSettings – stale for interleaved saves. } else { const refreshedSettings = response.data.settings || {}; + // Overlay any edit still pending in the debounce (not + // yet dispatched, so saveInterleaved above can't see + // it) on top of the server payload for the SCREEN only, + // so the refresh delivers fresh server-derived fields + // without momentarily reverting the in-progress edit + // (it re-saves when the debounce fires). A `true` + // sentinel means "use the current live value" (same + // convention as the auto-save effect). The CACHE and + // originalSettings stay the server truth, so an unsaved + // draft is never persisted to the cache and the pending + // field still reads as changed; the field's own save + // reconciles everything when the debounce fires. + const pending = changedFieldsRef.current || {}; + const live = settingsRef.current || {}; + const screenSettings = { ...refreshedSettings }; + Object.keys(pending).forEach((k) => { + screenSettings[k] = ( true === pending[k] ) ? live[k] : pending[k]; + }); setCachedFeatureData(featureId, response.data); setFeature(response.data); setSidePanels(response.data.side_panels || []); - setSettings(refreshedSettings); + setSettings(screenSettings); setOriginalSettings(JSON.parse(JSON.stringify(refreshedSettings))); } } @@ -558,57 +671,184 @@ export function FeatureSettingsScreen({ featureId, sidePanelId, onNavigate }) { // Setup debounced save (auto-save on change) // Uses AJAX endpoint for feature settings. useEffect(() => { - debouncedSaveRef.current = debounce((fieldsToSave) => { + displayedFeatureIdRef.current = featureId; + liveFeatureId = featureId; + + // This feature's single-flight save channel (see the module-scoped + // saveChannels map): at most one request in flight per feature; newer + // payloads queue in channel.pending (cumulative, newest-wins) and + // dispatch when the in-flight request settles, so neither responses + // nor server-side option writes for a feature can be applied out of + // order — including when the admin navigates away and back while a + // save is in flight, EVEN across a full unmount/remount (grid + // round-trip), because the channel outlives the mount. A channel's + // queue is only ever drained by closures of its OWN feature, so + // payloads are never dispatched under another feature's feature_id. + var channel = saveChannels[ featureId ] = + saveChannels[ featureId ] || { inFlight: false, pending: null }; + + // Because the channel outlives the mount, a response (or queue drain) + // can resolve inside a DEAD mount's closure while a NEW mount of the + // same feature is on screen — e.g. edit → grid → re-enter → edit while + // the first save is still in flight. The request itself is always + // correct, but the dead closure's setState calls are no-ops, which + // would leave the new mount with a stuck 'Saving changes…' toast (no + // auto-dismiss, and the feature-switch toast reset can't fire when the + // featureId never changes), an uncleared changedFields, and no server + // echo. So each mount publishes its live screen appliers and its + // dispatcher on the channel: response handlers read `channel.apply` at + // RESOLUTION time (reaching the current same-feature mount if one + // exists, harmlessly no-op'ing into the dead one otherwise), and + // settle() drains the queue via `channel.drain` (the newest mount's + // dispatchSave, so the drained request's whole chain is live). + // DELIBERATE RETENTION: apply/drain are NOT nulled on unmount. In-flight + // response handlers (and the reactions items-refetch, which resolves + // even later) dereference channel.apply unconditionally — nulling it + // would throw BEFORE the unconditional cache reconciliation and error + // signaling. A dead mount's setters are silent no-ops in React 18, the + // retained object is a handful of refs replaced on the next + // same-feature mount, and the map is bounded by the feature count. + channel.apply = { + displayedFeatureIdRef: displayedFeatureIdRef, + setToast: setToast, + setChangedFields: setChangedFields, + setSettings: setSettings, + setOriginalSettings: setOriginalSettings, + setFeature: setFeature, + setSidePanels: setSidePanels, + }; + + // Dispatches one save request. The sequence guard on the response + // remains as defense-in-depth against out-of-order application (an + // earlier response arriving last would otherwise overwrite the newer + // state in settings and the feature cache — e.g. a type-only access + // control payload clobbering the type+sub-type payload saved after it). + var dispatchSave = function (fieldsToSave) { if (Object.keys(fieldsToSave).length === 0) { return; } - // Use AJAX endpoint for feature settings - ajaxFetch('bb_admin_save_feature_settings', { - feature_id: featureId, - settings: JSON.stringify(fieldsToSave), - }) - .then((response) => { - if (response.success) { - setToast({ - status: 'success', - message: __('Settings saved.', 'buddyboss'), - }); - setChangedFields({}); + // Per-feature monotonic sequence (defense-in-depth): the channel + // already serializes this feature's requests, so a response is + // normally always its feature's newest — this guard only bites if + // that invariant is ever broken. Scoped to the channel, NOT global: + // a global counter would mark feature A's correctly-ordered + // response "superseded" whenever another feature dispatched a save + // meanwhile, silently skipping A's toast and settings echo. + var saveSeq = ( channel.seq || 0 ) + 1; + channel.seq = saveSeq; + channel.inFlight = true; + + var settle = function () { + channel.inFlight = false; + var pending = channel.pending; + if (pending) { + channel.pending = null; + // Drain through the NEWEST mount's dispatcher so a payload + // queued by a live mount isn't dispatched (and its response + // applied) through a dead mount's closure. + ( channel.drain || dispatchSave )(pending); + } + }; - // Merge any cross-feature flags pushed by the server back into - // window.bbAdminData so section-level conditionals reading from - // the `bbAdminData` source re-evaluate against fresh values - // without a page reload (e.g. Login Redirects → Profile Type - // Redirects section reacts to the `bp-member-type-enable-disable` - // toggle that lives in the Members feature). - if ( - response.data - && response.data.bbAdminDataUpdates - && 'object' === typeof response.data.bbAdminDataUpdates - && 'undefined' !== typeof window - && window.bbAdminData - ) { - Object.assign( window.bbAdminData, response.data.bbAdminDataUpdates ); - } + // Builds the error-toast payload. Intentionally NOT gated on + // supersession/navigation: the failed payload's changedFields were + // already reset on feature switch, so this toast is the ONLY + // remaining signal that the save failed — suppressing it would + // silently lose the failure. Instead, when the failed feature is + // no longer the one on screen, its name is included so the sticky + // error isn't misread as belonging to the feature the admin is now + // looking at. + var buildErrorToast = function ( baseMessage ) { + var message = baseMessage || __('Something went wrong. Please try again.', 'buddyboss'); + if ( featureId !== channel.apply.displayedFeatureIdRef.current ) { + var cached = getCachedFeatureData( featureId ); + message = sprintf( + /* translators: 1: feature name, 2: underlying error message. */ + __('Failed to save "%1$s" settings — %2$s', 'buddyboss'), + ( cached && cached.label ) || featureId, + message + ); + } + return { status: 'error', message: message }; + }; - // Reactions: refetch when reaction_items saved, or inject migration data (handled in reaction module). + // Use AJAX endpoint for feature settings. Guarded so a synchronous + // throw can't leave channel.inFlight stuck true forever — the + // channel is module-scoped now, so nothing else would ever reset + // it and every later edit would queue behind a wedged channel. + var request; + try { + request = ajaxFetch('bb_admin_save_feature_settings', { + feature_id: featureId, + settings: JSON.stringify(fieldsToSave), + }); + } catch { + settle(); + channel.apply.setToast( buildErrorToast() ); + return; + } + request + .then((response) => { + // Screen application must reach the mount that is alive at + // RESOLUTION time — see the channel.apply comment above. + var apply = channel.apply; + if (response.success) { + // Use actual saved values from server response (may differ from + // submitted values due to server-side validation/revert). + var actualSaved = ( response.data && response.data.saved ) ? response.data.saved : fieldsToSave; + + // Always reconcile THIS feature's cache with the server echo — + // even when this response has been superseded by another + // feature's save. The per-feature single-flight channel + // guarantees same-feature responses arrive in dispatch order, + // so this echo is the newest for the featureId captured in + // this closure; skipping it would leave the feature's cache + // holding pre-edit values on the next cache-first render. + // Reactions has its own cache/screen split: the helper runs + // its cache work unconditionally and gates its screen work + // on the same condition as the guard below (re-checked after + // its async refetch resolves). if ( 'reactions' === featureId ) { + // Screen setters are live-reading wrappers over + // channel.apply (not bare closure references): the + // helper's items-refetch resolves even later than + // this response, so its screen writes must also + // reach whichever same-feature mount is alive at + // that point. applyReactionPostSave( response, fieldsToSave, featureId, { ajaxFetch, getCachedFeatureData, setCachedFeatureData, - setFeature, - setSidePanels, - setSettings, - setOriginalSettings, + invalidateFeatureCache, + setFeature: function ( v ) { channel.apply.setFeature( v ); }, + setSidePanels: function ( v ) { channel.apply.setSidePanels( v ); }, + setSettings: function ( v ) { channel.apply.setSettings( v ); }, + setOriginalSettings: function ( v ) { channel.apply.setOriginalSettings( v ); }, + }, function () { + return saveSeq === channel.seq && featureId === channel.apply.displayedFeatureIdRef.current; + }, function () { + return saveSeq === channel.seq; + }, function () { + // Order concurrent items-refetch writes with + // channel-scoped state: the channel (and so + // this ledger AND channel.seq) is module-scoped + // and shares the lifetime of the module cache + // the refetch writes to, so the ordering holds + // across full screen remounts too. + if ( saveSeq < ( channel.itemsRefetchSeq || 0 ) ) { + return false; + } + channel.itemsRefetchSeq = saveSeq; + return true; + }, function () { + // Displayed-only gate for the superseded items-refetch + // branch (no seq check): the reactions feature is the + // one currently on screen. liveFeatureId is the single + // source of truth across mounts (see round-19 comment). + return 'reactions' === liveFeatureId; } ); } else { - // Use actual saved values from server response (may differ from - // submitted values due to server-side validation/revert). - var actualSaved = ( response.data && response.data.saved ) ? response.data.saved : fieldsToSave; - setSettings((prev) => ({ ...prev, ...actualSaved })); - setOriginalSettings((prev) => ({ ...prev, ...actualSaved })); const cachedData = getCachedFeatureData(featureId); if (cachedData) { setCachedFeatureData(featureId, { @@ -617,29 +857,119 @@ export function FeatureSettingsScreen({ featureId, sidePanelId, onNavigate }) { }); } - // If the server indicates panel visibility changed, refetch - // feature data to update the side navigation (e.g. Discussion Tags toggle). + // Panel-visibility changes must invalidate the cache even + // when this response is superseded or navigated-away — + // the settings echo above is cached unconditionally, and + // pairing it with stale panel structure would corrupt the + // cached payload until a hard reload. Only the refetch + // event (which targets the displayed screen) is gated. if ( response.data && response.data.refresh_panels ) { invalidateFeatureCache(); - window.dispatchEvent( new Event( 'bb-admin-refetch-feature' ) ); + // Gate on the module-level liveFeatureId, NOT this + // closure's apply ref: the event reaches whatever + // live listener exists, so a dead mount's frozen + // ref would fire a spurious refetch of a DIFFERENT + // feature's screen. The cache invalidation above + // already ran, so a skipped event costs nothing — + // the next mount fetches fresh panels regardless. + if ( featureId === liveFeatureId ) { + window.dispatchEvent( new Event( 'bb-admin-refetch-feature' ) ); + } } } - } else { - setToast({ - status: 'error', - message: ( response.data && response.data.message ) || __('Something went wrong. Please try again.', 'buddyboss'), + + // Merge any cross-feature flags pushed by the server back into + // window.bbAdminData so section-level conditionals reading from + // the `bbAdminData` source re-evaluate against fresh values + // without a page reload (e.g. Login Redirects → Profile Type + // Redirects section reacts to the `bp-member-type-enable-disable` + // toggle that lives in the Members feature). These are global + // server truths, so they apply regardless of supersession. + if ( + response.data + && response.data.bbAdminDataUpdates + && 'object' === typeof response.data.bbAdminDataUpdates + && 'undefined' !== typeof window + && window.bbAdminData + ) { + Object.assign( window.bbAdminData, response.data.bbAdminDataUpdates ); + } + + // Skip the SCREEN state application and the toast when this + // response is superseded (a newer save dispatched since — + // its own response handles the screen) OR belongs to a + // feature the admin has navigated away from (merging its + // fields/toast into the newly-displayed feature would be + // wrong; the reactions path would even replace the new + // feature's panels). The feature cache and global flags + // above are already reconciled either way. + if ( saveSeq !== channel.seq || featureId !== apply.displayedFeatureIdRef.current ) { + return; + } + + apply.setToast({ + status: 'success', + message: __('Settings saved.', 'buddyboss'), }); + + apply.setChangedFields({}); + + // Reactions screen state was already handled above via the + // helper's shouldApplyScreen() (same condition as this guard); + // refresh_panels was handled above the guard. + if ( 'reactions' !== featureId ) { + apply.setSettings((prev) => ({ ...prev, ...actualSaved })); + apply.setOriginalSettings((prev) => ({ ...prev, ...actualSaved })); + } + } else { + // See buildErrorToast for why this is not gated on the + // supersession/navigation guard above. + apply.setToast( buildErrorToast( response.data && response.data.message ) ); } }) .catch(() => { - setToast({ - status: 'error', - message: __('Something went wrong. Please try again.', 'buddyboss'), - }); - }); + channel.apply.setToast( buildErrorToast() ); + }) + .finally(settle); + }; + + // Newest mount's dispatcher — settle() drains the queue through this + // so a dead mount's settle hands the queued payload to a live chain. + channel.drain = dispatchSave; + + debouncedSaveRef.current = debounce((fieldsToSave) => { + // Single-flight: while a save is in flight, queue the latest + // cumulative payload instead of dispatching a second request. + // Newer fields overwrite queued ones; the queue drains in settle(). + if (channel.inFlight) { + channel.pending = { ...(channel.pending || {}), ...fieldsToSave }; + return; + } + dispatchSave(fieldsToSave); }, 1000); return () => { + // Release the live-feature slot. On an in-route feature switch this + // cleanup runs before the successor effect re-assigns it; on a full + // unmount it stays null until another screen mounts. The guard + // keeps a defensive ordering assumption explicit (cleanup always + // precedes the successor's set in React's passive-effects flush). + if ( liveFeatureId === featureId ) { + liveFeatureId = null; + } + // No channel flush needed on feature change: channels are + // per-feature entries in the module-scoped saveChannels map, so + // the old feature's settle() drains its own queue with its own + // feature_id even after navigation — queued changes are never + // dropped or misrouted. (The per-feature serialization spans + // in-route feature switches AND full screen unmounts: the channel + // outlives the mount, so a remount's edits queue behind the old + // mount's in-flight request.) Un-fired debounce timers + // also survive: our custom debounce (utils/api.js) exposes no + // .cancel(), so the guard below is intentionally a no-op today and + // the trailing timer fires post-switch with this closure's correct + // feature_id. If a cancellable debounce (e.g. lodash) is ever + // swapped in, flush the timer here instead of cancelling it. if (debouncedSaveRef.current && debouncedSaveRef.current.cancel) { debouncedSaveRef.current.cancel(); } diff --git a/src/js/admin/settings/utils/featureCache.js b/src/js/admin/settings/utils/featureCache.js index 12ad25cf89..841d52623b 100644 --- a/src/js/admin/settings/utils/featureCache.js +++ b/src/js/admin/settings/utils/featureCache.js @@ -8,8 +8,11 @@ * @since BuddyBoss [BBVERSION] */ -// In-memory cache storage -const cache = {}; +// In-memory cache storage. Null prototype so a feature id that collides with +// an Object.prototype key (e.g. a URL-supplied "constructor") reads undefined +// instead of an inherited function; all access is bracket-style and +// Object.keys() is a static, so no consumer needs the prototype. +const cache = Object.create(null); /** * Get cached feature data.