1 line
No EOL
32 KiB
JavaScript
1 line
No EOL
32 KiB
JavaScript
"use strict";(globalThis.webpackChunk_wcAdmin_webpackJsonp=globalThis.webpackChunk_wcAdmin_webpackJsonp||[]).push([[5712],{93686:(e,t,n)=>{n.d(t,{l$:()=>d,My:()=>_,D2:()=>l,ls:()=>u}),n(62932);var a=n(69307),o=n(65736),s=n(55609),c=n(9818),i=n(67221),r=n(10431);const l=({gatewayId:e,gatewayState:t,settingsHref:n,onboardingHref:l,isOffline:m,acceptIncentive:d=(()=>{}),gatewayHasRecommendedPaymentMethods:_,buttonText:u=(0,o.__)("Enable","woocommerce"),incentive:g=null})=>{const[p,y]=(0,a.useState)(!1),{createErrorNotice:w}=(0,c.dispatch)("core/notices"),{togglePaymentGateway:E,invalidateResolutionForStoreSelector:v}=(0,c.useDispatch)(i.PAYMENT_SETTINGS_STORE_NAME),h=()=>{w((0,o.__)("An error occurred. You will be redirected to the settings page, try enabling the payment gateway there.","woocommerce"),{type:"snackbar",explicitDismiss:!0})};return(0,a.createElement)(s.Button,{variant:"primary",isBusy:p,disabled:p,onClick:a=>{if(a.preventDefault(),t.enabled)return;const o=window.woocommerce_admin.nonces?.gateway_toggle||"";if(!o)return h(),void(window.location.href=n);y(!0),g&&d(g.promo_id),E(e,window.woocommerce_admin.ajax_url,o).then((e=>{if("needs_setup"===e.data&&!t.account_connected){if(!_)return void(window.location.href=l);(0,r.getHistory)().push((0,r.getNewPath)({},"/payment-methods"))}v(m?"getOfflinePaymentGateways":"getPaymentProviders"),y(!1)})).catch((()=>{y(!1),h(),window.location.href=n}))},href:n},u)};var m=n(87778);const d=({acceptIncentive:e,buttonText:t=(0,o.__)("Activate payments","woocommerce"),incentive:n=null})=>{const[c,i]=(0,a.useState)(!1);return(0,a.createElement)(s.Button,{variant:"primary",isBusy:c,disabled:c,onClick:()=>{i(!0),n&&e(n.promo_id),window.location.href=(0,m.vA)()}},t)},_=({gatewayId:e,gatewayState:t,onboardingState:n,settingsHref:c,onboardingHref:i,gatewayHasRecommendedPaymentMethods:l,buttonText:m=(0,o.__)("Complete setup","woocommerce")})=>{const[d,_]=(0,a.useState)(!1),u=t.account_connected,g=n.started,p=n.completed;return(0,a.createElement)(s.Button,{key:e,variant:"primary",isBusy:d,disabled:d,onClick:()=>{if(_(!0),u&&g)return u&&g&&!p?void(window.location.href=i):void(window.location.href=c);l?((0,r.getHistory)().push((0,r.getNewPath)({},"/payment-methods")),_(!1)):window.location.href=i}},m)},u=({settingsHref:e,buttonText:t=(0,o.__)("Manage","woocommerce")})=>(0,a.createElement)(s.Button,{variant:"secondary",href:e},t)},89554:(e,t,n)=>{n.r(t),n.d(t,{SettingsPaymentsMain:()=>z,default:()=>q});var a=n(69307),o=n(99196),s=n(65736),c=n(67221),i=n(9818),r=n(86989),l=n.n(r),m=n(10431),d=n(542),_=n(31213),u=n(55609),g=n(22629),p=n(88679);const y=()=>(0,a.createElement)("div",{className:"other-payment-gateways__content__grid-item"},(0,a.createElement)("div",{className:"grid-item-placeholder__img"}),(0,a.createElement)("div",{className:"other-payment-gateways__content__grid-item__content grid-item-placeholder__content"},(0,a.createElement)("span",{className:"grid-item-placeholder__title"}),(0,a.createElement)("span",{className:"grid-item-placeholder__description"}),(0,a.createElement)("div",{className:"grid-item-placeholder__actions"}))),w=(0,p.O3)("wcAdminAssetUrl"),E=({suggestions:e,suggestionCategories:t,installingPlugin:n,setupPlugin:o,isFetching:c})=>{const i="expanded"===new URLSearchParams(window.location.search).get("other_pes_section"),[r,l]=(0,a.useState)(i),m=(0,a.useMemo)((()=>t.map((t=>({category:t,suggestions:e.filter((e=>e._type===t.id))})))),[e,t]),d=(0,a.useMemo)((()=>c?(0,a.createElement)(a.Fragment,null,(0,a.createElement)("div",{className:"other-payment-gateways__header__title-image-placeholder"}),(0,a.createElement)("div",{className:"other-payment-gateways__header__title-image-placeholder"}),(0,a.createElement)("div",{className:"other-payment-gateways__header__title-image-placeholder"})):m.map((({suggestions:e})=>0===e.length?null:e.map((e=>(0,a.createElement)("img",{key:e.id,src:e.icon,alt:e.title+" small logo",width:"24",height:"24",className:"other-payment-gateways__header__title-image"})))))),[m,c]),p=(0,a.useMemo)((()=>c?(0,a.createElement)(a.Fragment,null,(0,a.createElement)(y,null),(0,a.createElement)(y,null),(0,a.createElement)(y,null)):m.map((({category:e,suggestions:t})=>0===t.length?null:(0,a.createElement)("div",{key:e.id},(0,a.createElement)("div",{className:"other-payment-gateways__content__title"},(0,a.createElement)("h3",{className:"other-payment-gateways__content__title__h3"},(0,g.decodeEntities)(e.title)),(0,a.createElement)(u.Tooltip,{text:(0,g.decodeEntities)(e.description),position:"top right"},(0,a.createElement)(_.Z,{icon:"info-outline",className:"other-payment-gateways__content__title__tooltip"}))),(0,a.createElement)("div",{className:"other-payment-gateways__content__grid"},t.map((e=>(0,a.createElement)("div",{className:"other-payment-gateways__content__grid-item",key:e.id},(0,a.createElement)("img",{className:"other-payment-gateways__content__grid-item-image",src:e.icon,alt:(0,g.decodeEntities)(e.title)+" logo"}),(0,a.createElement)("div",{className:"other-payment-gateways__content__grid-item__content"},(0,a.createElement)("span",{className:"other-payment-gateways__content__grid-item__content__title"},e.title),(0,a.createElement)("span",{className:"other-payment-gateways__content__grid-item__content__description"},(0,g.decodeEntities)(e.description)),(0,a.createElement)("div",{className:"other-payment-gateways__content__grid-item__content__actions"},(0,a.createElement)(u.Button,{variant:"primary",onClick:()=>o(e.id,e.plugin.slug,null),isBusy:n===e.id,disabled:!!n},(0,s.__)("Install","woocommerce")))))))))))),[m,n,o,c]);return c||0!==e.length?(0,a.createElement)("div",{className:"other-payment-gateways"},(0,a.createElement)("div",{className:"other-payment-gateways__header",onClick:()=>{l(!r)},onKeyDown:e=>{"Enter"!==e.key&&" "!==e.key||l(!r)},role:"button",tabIndex:0,"aria-expanded":r},(0,a.createElement)("div",{className:"other-payment-gateways__header__title"},(0,a.createElement)("span",null,(0,s.__)("Other payment options","woocommerce")),!r&&(0,a.createElement)(a.Fragment,null,d)),(0,a.createElement)(_.Z,{icon:r?"chevron-up":"chevron-down"})),r&&(0,a.createElement)("div",{className:"other-payment-gateways__content"},p,(0,a.createElement)("div",{className:"other-payment-gateways__content__external-icon"},(0,a.createElement)(u.Button,{variant:"link",target:"_blank",href:"https://woocommerce.com/product-category/woocommerce-extensions/payment-gateways/"},(0,a.createElement)("img",{src:w+"/icons/external-link.svg",alt:""}),(0,s.__)("More payment options","woocommerce"))))):null};var v=n(29346),h=n(80225),N=n(22779),b=n(94333),f=n(60247),S=n(13608),k=n(69441);const P=(e,t)=>{const n=t,{changes:a,type:o,props:s}=n,{items:c}=s,{selectedItem:i}=e;switch(o){case N.L7.stateChangeTypes.ItemClick:return{...a,isOpen:!0,highlightedIndex:e.highlightedIndex};case N.L7.stateChangeTypes.ToggleButtonKeyDownArrowDown:return{selectedItem:c[i?Math.min(c.indexOf(i)+1,c.length-1):0],isOpen:!0};case N.L7.stateChangeTypes.ToggleButtonKeyDownArrowUp:return{selectedItem:c[i?Math.max(c.indexOf(i)-1,0):c.length-1],isOpen:!0};default:return a}},T=e=>e.normalize("NFD").replace(/[\u0300-\u036f]/g,""),C=({name:e,className:t,label:n,describedBy:c,options:i,onChange:r,value:l,placeholder:m,children:d})=>{var _;const[g,y]=(0,o.useState)(""),w=(0,b.useThrottle)((0,a.useCallback)(((e,t)=>new Set(t.filter((t=>{var n;return`${T(null!==(n=t.name)&&void 0!==n?n:"")}`.toLowerCase().includes(T(e.toLowerCase()))})))),[]),200),E=""!==g?null!==(_=w(g,i))&&void 0!==_?_:new Set:new Set(i),{getToggleButtonProps:C,getMenuProps:I,getItemProps:A,isOpen:M,highlightedIndex:x,selectedItem:R,closeMenu:B}=(0,N.L7)({initialSelectedItem:l,items:[...E],stateReducer:P}),O=((e,t)=>{const n=t.find((t=>t.key===e));return n?.name?n.name:""})(l.key,i),D=R?R.key:"",L=(0,o.useRef)(null),F=(0,o.useRef)(null),H=(0,a.useCallback)((e=>{const t=L.current,n=t?.querySelector(`[data-index="${e}"]`);n&&n.scrollIntoView({block:"nearest"})}),[L]),G=""!==g,Z=I({className:"components-country-select-control__menu","aria-hidden":!M,ref:L}),U=(0,a.useCallback)((e=>{e.stopPropagation(),r(D),B()}),[r,D,B]),Y=(0,a.useCallback)((e=>{e.stopPropagation(),"Enter"===e.key&&r(D)}),[r,D]),W=(0,a.useCallback)((e=>{e.preventDefault(),""!==g&&y(""),null!==R&&setTimeout((()=>{H(i.indexOf(R))}),10)}),[g,R]);return(0,a.useEffect)((()=>{if(M&&null!==R){const e=Array.from(E).indexOf(R);H(e)}}),[M]),(0,a.createElement)("div",{className:(0,h.Z)("woopayments components-country-select-control",t)},(0,a.createElement)(u.Button,C({"aria-label":n,"aria-labelledby":void 0,"aria-describedby":c||(O?(0,s.sprintf)((0,s.__)("Currently selected: %s","woocommerce"),O):(0,s.__)("No selection","woocommerce")),className:(0,h.Z)("components-country-select-control__button",{placeholder:!O}),name:e,onKeyDown:Y}),(0,a.createElement)("span",{className:"components-country-select-control__button-value"},(0,a.createElement)("span",{className:"components-country-select-control__label"},n),O||m),(0,a.createElement)(f.Z,{icon:S.Z,className:"components-custom-select-control__button-icon"})),(0,a.createElement)("div",Z,M&&(0,a.createElement)(a.Fragment,null,(0,a.createElement)("div",{className:"components-country-select-control__search wc-settings-prevent-change-event"},(0,a.createElement)("input",{className:"components-country-select-control__search--input",ref:F,type:"text",value:g,onChange:({target:e})=>y(e.value),tabIndex:-1,placeholder:(0,s.__)("Search","woocommerce")}),(0,a.createElement)("button",{className:"components-country-select-control__search--input-suffix",onClick:W},G?(0,a.createElement)("img",{src:p.vm+"images/icons/clear.svg",alt:(0,s.__)("Clear search","woocommerce")}):(0,a.createElement)("img",{src:p.vm+"images/icons/search.svg",alt:(0,s.__)("Search","woocommerce")}))),(0,a.createElement)("div",{className:"components-country-select-control__list"},[...E].map(((e,t)=>(0,a.createElement)("div",(0,v.Z)({},A({item:e,index:t,key:e.key,className:(0,h.Z)(e.className,"components-country-select-control__item",{"is-highlighted":t===x}),"data-index":t,style:e.style}),{key:e.key}),e.key===D&&(0,a.createElement)(f.Z,{icon:k.Z,className:"components-country-select-control__item-icon"}),d?d(e):e.name)))),(0,a.createElement)("div",{className:"components-country-select-control__apply"},(0,a.createElement)("button",{className:"components-button is-primary",onClick:U},(0,s.__)("Apply","woocommerce"))))))};var I=n(40404),A=n(82453),M=n(49471),x=n(42058);const R=({providerId:e,pluginFile:t,isSuggestion:n,suggestionHideUrl:o="",onToggle:r,links:l=[],canResetAccount:m=!1,setResetAccountModalVisible:d=(()=>{}),isEnabled:_=!1})=>{const{deactivatePlugin:g}=(0,i.useDispatch)(c.PLUGINS_STORE_NAME),[p,y]=(0,a.useState)(!1),[w,E]=(0,a.useState)(!1),[v,h]=(0,a.useState)(!1),{invalidateResolutionForStoreSelector:N,togglePaymentGateway:b,hidePaymentExtensionSuggestion:f}=(0,i.useDispatch)(c.PAYMENT_SETTINGS_STORE_NAME),{createErrorNotice:S,createSuccessNotice:k}=(0,i.useDispatch)("core/notices"),P={pricing:(0,s.__)("See pricing & fees","woocommerce"),about:(0,s.__)("Learn more","woocommerce"),terms:(0,s.__)("See Terms of Service","woocommerce"),support:(0,s.__)("Get support","woocommerce"),documentation:(0,s.__)("View documentation","woocommerce")};return(0,a.createElement)(a.Fragment,null,l.filter((e=>{switch(e._type){case"pricing":return!0;case"terms":case"about":return!_;case"documentation":case"support":return _;default:return!1}})).map((e=>{const t=P[e._type];return t?(0,a.createElement)("div",{className:"woocommerce-ellipsis-menu__content__item",key:e._type},(0,a.createElement)(u.Button,{target:"_blank",href:e.url},t)):null})),(0,a.createElement)(u.CardDivider,null),n&&(0,a.createElement)("div",{className:"woocommerce-ellipsis-menu__content__item",key:"hide-suggestion"},(0,a.createElement)(u.Button,{onClick:()=>{h(!0),f(o).then((()=>{N("getPaymentProviders"),h(!1),r()})).catch((()=>{S((0,s.__)("Failed to hide the payment extension suggestion.","woocommerce")),h(!1),r()}))},isBusy:v,disabled:v},(0,s.__)("Hide suggestion","woocommerce"))),m&&(0,a.createElement)("div",{className:"woocommerce-ellipsis-menu__content__item",key:"reset-account"},(0,a.createElement)(u.Button,{onClick:()=>{d(!0),r()},className:"components-button__danger"},(0,s.__)("Reset account","woocommerce"))),!n&&!_&&(0,a.createElement)("div",{className:"woocommerce-ellipsis-menu__content__item",key:"deactivate"},(0,a.createElement)(u.Button,{className:"components-button__danger",onClick:()=>{y(!0),g(t).then((()=>{k((0,s.__)("Plugin was successfully deactivated.","woocommerce")),N("getPaymentProviders"),y(!1),r()})).catch((()=>{S((0,s.__)("Failed to deactivate the plugin.","woocommerce")),y(!1),r()}))},isBusy:p,disabled:p},(0,s.__)("Deactivate","woocommerce"))),!n&&_&&(0,a.createElement)("div",{className:"woocommerce-ellipsis-menu__content__item",key:"disable"},(0,a.createElement)(u.Button,{className:"components-button__danger",onClick:()=>{const t=window.woocommerce_admin.nonces?.gateway_toggle||"";t?(E(!0),b(e,window.woocommerce_admin.ajax_url,t).then((()=>{N("getPaymentProviders"),E(!1),r()})).catch((()=>{S((0,s.__)("Failed to disable the plugin.","woocommerce")),E(!1),r()}))):S((0,s.__)("Failed to disable the plugin.","woocommerce"))},isBusy:w,disabled:w},(0,s.__)("Disable","woocommerce"))))};var B=n(86020),O=n(87778);const D=({isOpen:e,onClose:t})=>{const[n,o]=(0,a.useState)(!1);return(0,a.createElement)(a.Fragment,null,e&&(0,a.createElement)(u.Modal,{title:(0,s.__)("Reset your test account","woocommerce"),className:"woocommerce-woopayments-modal",isDismissible:!0,onRequestClose:t},(0,a.createElement)("div",{className:"woocommerce-woopayments-modal__content"},(0,a.createElement)("div",{className:"woocommerce-woopayments-modal__content__item"},(0,a.createElement)("div",null,(0,a.createElement)("span",null,(0,s.sprintf)((0,s.__)("When you reset your test account, all data — including your %s account details, test transactions, and payouts history — will be lost. This action cannot be undone, but you can create a new test account at any time.","woocommerce"),"WooPayments")))),(0,a.createElement)("div",{className:"woocommerce-woopayments-modal__content__item"},(0,a.createElement)("h3",null,(0,s.__)("Are you sure you'd like to continue?","woocommerce")))),(0,a.createElement)("div",{className:"woocommerce-woopayments-modal__actions"},(0,a.createElement)(u.Button,{className:"danger",variant:"secondary",isBusy:n,disabled:n,onClick:()=>{o(!0),window.location.href=(0,O.Pq)()}},(0,s.__)("Yes, reset account","woocommerce")))))};var L=n(74617),F=n(67859);const H=({isOpen:e,devMode:t,onClose:n})=>{const[o,c]=(0,a.useState)(!1),[i,r]=(0,a.useState)(!1);return(0,a.createElement)(a.Fragment,null,e&&(0,a.createElement)(u.Modal,{title:(0,s.__)("You're ready to test payments!","woocommerce"),className:"woocommerce-woopayments-modal",isDismissible:!0,onRequestClose:n},(0,a.createElement)("div",{className:"woocommerce-woopayments-modal__content"},(0,a.createElement)("div",{className:"woocommerce-woopayments-modal__content__item"},(0,a.createElement)("div",{className:"woocommerce-woopayments-modal__content__item__description"},(0,a.createElement)("p",null,(0,F.Z)({mixedString:(0,s.__)("We've created a test account for you so that you can begin testing payments on your store. Not sure what to test? Take a look at {{link}}how to test payments{{/link}}.","woocommerce"),components:{link:(0,a.createElement)(B.Link,{href:"https://woocommerce.com/document/woopayments/testing-and-troubleshooting/sandbox-mode/",target:"_blank",rel:"noreferrer",type:"external"})}})))),(0,a.createElement)("div",{className:"woocommerce-woopayments-modal__content__item"},(0,a.createElement)("h2",null,(0,s.__)("What's next:","woocommerce"))),(0,a.createElement)("div",{className:"woocommerce-woopayments-modal__content__item-flex"},(0,a.createElement)("img",{src:p.vm+"images/icons/store.svg",alt:"store icon"}),(0,a.createElement)("div",{className:"woocommerce-woopayments-modal__content__item-flex__description"},(0,a.createElement)("h3",null,(0,s.__)("Continue your store setup","woocommerce")),(0,a.createElement)("div",null,(0,s.__)("Finish completing the tasks required to launch your store.","woocommerce")))),!t&&(0,a.createElement)("div",{className:"woocommerce-woopayments-modal__content__item-flex"},(0,a.createElement)("img",{src:p.vm+"images/icons/dollar.svg",alt:"dollar icon"}),(0,a.createElement)("div",{className:"woocommerce-woopayments-modal__content__item-flex__description"},(0,a.createElement)("h3",null,(0,s.__)("Activate payments","woocommerce")),(0,a.createElement)("div",null,(0,a.createElement)("p",null,(0,F.Z)({mixedString:(0,s.__)("Provide some additional details about your business so you can being accepting real payments. {{link}}Learn more{{/link}}","woocommerce"),components:{link:(0,a.createElement)(B.Link,{href:"https://woocommerce.com/document/woopayments/startup-guide/#sign-up-process",target:"_blank",rel:"noreferrer",type:"external"})}})))))),(0,a.createElement)("div",{className:"woocommerce-woopayments-modal__actions"},(0,a.createElement)(u.Button,{variant:"primary",isBusy:i,disabled:i,onClick:()=>{r(!0),window.location.href=(0,L.getAdminLink)("admin.php?page=wc-admin")}},(0,s.__)("Continue store setup","woocommerce")),!t&&(0,a.createElement)(u.Button,{variant:"secondary",isBusy:o,disabled:o,onClick:()=>{c(!0),window.location.href=(0,O.vA)()}},(0,s.__)("Activate payments","woocommerce")))))},G=({provider:e,label:t})=>{const[n,o]=(0,a.useState)(!1),s=(0,O.mz)(e.id)&&"gateway"===e._type&&e.state?.account_connected&&(e.onboarding?.state.test_mode||!e.onboarding?.state.completed);return(0,a.createElement)(a.Fragment,null,(0,a.createElement)(B.EllipsisMenu,{label:t,renderContent:({onToggle:t})=>(0,a.createElement)(R,{providerId:e.id,pluginFile:e.plugin.file,isSuggestion:"suggestion"===e._type,suggestionHideUrl:"suggestion"===e._type?e._links?.hide?.href:"",links:e.links,onToggle:t,isEnabled:e.state?.enabled,canResetAccount:s,setResetAccountModalVisible:o})}),(0,a.createElement)(D,{isOpen:n,onClose:()=>o(!1)}))},Z=({status:e,message:t})=>(0,a.createElement)(B.Pill,{className:`woocommerce-status-badge ${(()=>{switch(e){case"active":case"has_incentive":return"woocommerce-status-badge--success";case"needs_setup":case"test_mode":return"woocommerce-status-badge--warning";case"recommended":case"inactive":return"woocommerce-status-badge--info";default:return""}})()}`},t||(()=>{switch(e){case"active":return(0,s.__)("Active","woocommerce");case"inactive":return(0,s.__)("Inactive","woocommerce");case"needs_setup":return(0,s.__)("Action needed","woocommerce");case"test_mode":return(0,s.__)("Test mode","woocommerce");case"recommended":return(0,s.__)("Recommended","woocommerce");default:return""}})());var U=n(93686);const Y=({providers:e,installedPluginSlugs:t,installingPlugin:n,setupPlugin:o,acceptIncentive:i,updateOrdering:r})=>(0,a.createElement)(A.JN,{items:e,className:"settings-payment-gateways__list",setItems:r},e.map((e=>{switch(e._type){case c.PaymentProviderType.Suggestion:const r=e,l=t.includes(e.plugin.slug);return(0,a.createElement)(A.TR,{key:r.id,id:r.id},(({extension:e,installingPlugin:t,setupPlugin:n,pluginInstalled:o,acceptIncentive:c,...i})=>{const r=(0,O.Kr)(e)?e._incentive:null,l=(0,O.Kr)(e)&&(!(0,O.Ir)(e._incentive)||(0,O.o0)(e._incentive,"wc_settings_payments__banner"));return(0,a.createElement)("div",(0,v.Z)({id:e.id,className:"transitions-disabled woocommerce-list__item woocommerce-list__item-enter-done "+(l?"has-incentive":"")},i),(0,a.createElement)("div",{className:"woocommerce-list__item-inner"},(0,a.createElement)("div",{className:"woocommerce-list__item-before"},(0,a.createElement)(A.mR,null),e.icon&&(0,a.createElement)("img",{className:"woocommerce-list__item-image",src:e.icon,alt:e.title+" logo"})),(0,a.createElement)("div",{className:"woocommerce-list__item-text"},(0,a.createElement)("span",{className:"woocommerce-list__item-title"},e.title," ",!(0,O.Kr)(e)&&(0,O.mz)(e.id)&&(0,a.createElement)(Z,{status:"recommended"}),r&&(0,a.createElement)(Z,{status:"has_incentive",message:r.badge})),(0,a.createElement)("span",{className:"woocommerce-list__item-content",dangerouslySetInnerHTML:(0,x.ZP)((0,g.decodeEntities)(e.description))}),(0,O.mz)(e.id)&&(0,a.createElement)(M.WooPaymentMethodsLogos,{maxElements:10,isWooPayEligible:!0})),(0,a.createElement)("div",{className:"woocommerce-list__item-after"},(0,a.createElement)("div",{className:"woocommerce-list__item-after__actions"},(0,a.createElement)(u.Button,{variant:"primary",onClick:()=>{var t;r&&c(r.promo_id),n(e.id,e.plugin.slug,null!==(t=e.onboarding?._links.onboard.href)&&void 0!==t?t:null)},isBusy:t===e.id,disabled:!!t},o?(0,s.__)("Enable","woocommerce"):(0,s.__)("Install","woocommerce")),(0,a.createElement)(G,{label:(0,s.__)("Payment Provider Options","woocommerce"),provider:e})))))})({extension:r,installingPlugin:n,setupPlugin:o,pluginInstalled:l,acceptIncentive:i}));case c.PaymentProviderType.Gateway:const m=e;return(0,a.createElement)(A.TR,{key:e.id,id:e.id},(({gateway:e,acceptIncentive:t,...n})=>{var o;const c=(0,O.mz)(e.id),i=(0,O.Kr)(e)?e._incentive:null,r=i&&!i?.promo_id.includes("-action-"),l=(null!==(o=e.onboarding.recommended_payment_methods)&&void 0!==o?o:[]).length>0,m=!e.state.account_connected||e.state.account_connected&&!e.onboarding.state.started||e.state.account_connected&&e.onboarding.state.started&&!e.onboarding.state.completed;return(0,a.createElement)("div",(0,v.Z)({id:e.id,className:`transitions-disabled woocommerce-list__item woocommerce-list__item-enter-done woocommerce-item__payment-gateway ${c?"woocommerce-item__woocommerce-payments":""} ${r?"has-incentive":""}`},n),(0,a.createElement)("div",{className:"woocommerce-list__item-inner"},(0,a.createElement)("div",{className:"woocommerce-list__item-before"},(0,a.createElement)(A.mR,null),e.icon&&(0,a.createElement)("img",{className:"woocommerce-list__item-image",src:e.icon,alt:e.title+" logo"})),(0,a.createElement)("div",{className:"woocommerce-list__item-text"},(0,a.createElement)("span",{className:"woocommerce-list__item-title"},e.title,i?(0,a.createElement)(Z,{status:"has_incentive",message:i.badge}):(0,a.createElement)(Z,{status:!e.state.enabled&&e.state.needs_setup?"needs_setup":e.state.enabled?c&&e.state.test_mode?"test_mode":"active":"inactive"}),e.supports?.includes("subscriptions")&&(0,a.createElement)(u.Tooltip,{text:(0,s.__)("Supports recurring payments","woocommerce"),children:(0,a.createElement)("img",{src:p.vm+"images/icons/recurring-payments.svg",alt:(0,s.__)("Icon to indicate support for recurring payments","woocommerce")})})),(0,a.createElement)("span",{className:"woocommerce-list__item-content",dangerouslySetInnerHTML:(0,x.ZP)((0,g.decodeEntities)(e.description))}),c&&(0,a.createElement)(M.WooPaymentMethodsLogos,{maxElements:10,isWooPayEligible:!0})),(0,a.createElement)("div",{className:"woocommerce-list__item-after"},(0,a.createElement)("div",{className:"woocommerce-list__item-after__actions"},!e.state.enabled&&!m&&(0,a.createElement)(U.D2,{gatewayId:e.id,gatewayState:e.state,settingsHref:e.management._links.settings.href,onboardingHref:e.onboarding._links.onboard.href,isOffline:!1,gatewayHasRecommendedPaymentMethods:l,incentive:i,acceptIncentive:t}),!m&&(0,a.createElement)(U.ls,{settingsHref:e.management._links.settings.href}),m&&(0,a.createElement)(U.My,{gatewayId:e.id,gatewayState:e.state,onboardingState:e.onboarding.state,settingsHref:e.management._links.settings.href,onboardingHref:e.onboarding._links.onboard.href,gatewayHasRecommendedPaymentMethods:l}),(0,O.mz)(e.id)&&!e.state.dev_mode&&e.state.account_connected&&e.onboarding.state.completed&&e.onboarding.state.test_mode&&(0,a.createElement)(U.l$,{acceptIncentive:t,incentive:i}),(0,a.createElement)(G,{label:(0,s.__)("Payment Provider Options","woocommerce"),provider:e})))))})({gateway:m,acceptIncentive:i}));case c.PaymentProviderType.OfflinePmsGroup:const d=e;return(0,a.createElement)(A.TR,{key:d.id,id:d.id},(0,a.createElement)("div",{id:d.id,className:"transitions-disabled woocommerce-list__item clickable-list-item enter-done",onClick:()=>{window.location.href=d.management._links.settings.href}},(0,a.createElement)("div",{className:"woocommerce-list__item-inner"},(0,a.createElement)("div",{className:"woocommerce-list__item-before"},(0,a.createElement)(A.mR,null),(0,a.createElement)("img",{src:d.icon,alt:d.title+" logo"})),(0,a.createElement)("div",{className:"woocommerce-list__item-text"},(0,a.createElement)("span",{className:"woocommerce-list__item-title"},d.title),(0,a.createElement)("span",{className:"woocommerce-list__item-content",dangerouslySetInnerHTML:{__html:d.description}})),(0,a.createElement)("div",{className:"woocommerce-list__item-after centered"},(0,a.createElement)("div",{className:"woocommerce-list__item-after__actions"},(0,a.createElement)("a",{href:d.management._links.settings.href},(0,a.createElement)(_.Z,{icon:"chevron-right"})))))));default:return null}}))),W=({providers:e,installedPluginSlugs:t,installingPlugin:n,setupPlugin:o,acceptIncentive:r,updateOrdering:m,isFetching:d,businessRegistrationCountry:_,setBusinessRegistrationCountry:u})=>{var p;const{invalidateResolution:y}=(0,i.useDispatch)(c.PAYMENT_SETTINGS_STORE_NAME),w=(0,a.useMemo)((()=>Object.entries(window.wcSettings.countries||[]).map((([e,t])=>({key:e,name:(0,g.decodeEntities)(t),types:[]}))).sort(((e,t)=>e.name.localeCompare(t.name)))),[]);return(0,a.createElement)("div",{className:"settings-payment-gateways"},(0,a.createElement)("div",{className:"settings-payment-gateways__header"},(0,a.createElement)("div",{className:"settings-payment-gateways__header-title"},(0,s.__)("Payment providers","woocommerce")),(0,a.createElement)("div",{className:"settings-payment-gateways__header-select-container"},(0,a.createElement)(C,{className:"woocommerce-select-control__country",label:(0,s.__)("Business location :","woocommerce"),placeholder:"",value:null!==(p=w.find((e=>e.key===_)))&&void 0!==p?p:{key:"US",name:"United States (US)"},options:w,onChange:e=>{l()({path:c.WC_ADMIN_NAMESPACE+"/settings/payments/country",method:"POST",data:{location:e}}).then((()=>{u(e),y("getPaymentProviders",[e])}))}}))),d?(0,a.createElement)(I.a,{rows:5}):(0,a.createElement)(Y,{providers:e,installedPluginSlugs:t,installingPlugin:n,setupPlugin:o,acceptIncentive:r,updateOrdering:m}))},K=({incentive:e,provider:t,onboardingUrl:n,onDismiss:o,onAccept:c,setupPlugin:i})=>{const[r,l]=(0,a.useState)(!1),[m,d]=(0,a.useState)(!1),[_,g]=(0,a.useState)(!1),y="wc_settings_payments__banner";return r||(0,O.o0)(e,y)||m?null:(0,a.createElement)(u.Card,{className:"woocommerce-incentive-banner",isRounded:!0},(0,a.createElement)("div",{className:"woocommerce-incentive-banner__content"},(0,a.createElement)("img",{src:p.vm+"images/settings-payments/incentives-illustration.svg",alt:(0,s.__)("Incentive illustration","woocommerce")}),(0,a.createElement)(u.CardBody,{className:"woocommerce-incentive-banner__body"},(0,a.createElement)(Z,{status:"has_incentive",message:(0,s.__)("Limited time offer","woocommerce")}),(0,a.createElement)("h2",null,e.title),(0,a.createElement)("p",null,e.description),(0,a.createElement)("p",{className:"woocommerce-incentive-banner__terms"},(0,a.createInterpolateElement)((0,s.__)("See <termsLink /> for details.","woocommerce"),{termsLink:(0,a.createElement)(B.Link,{href:e.tc_url,target:"_blank",rel:"noreferrer",type:"external"},(0,s.__)("Terms and Conditions","woocommerce"))})),(0,a.createElement)(u.Button,{variant:"primary",isBusy:r,disabled:r,onClick:()=>{g(!0),c(e.promo_id),o(e._links.dismiss.href,y),l(!0),i(t.id,t.plugin.slug,n),g(!1)}},e.cta_label),(0,a.createElement)(u.Button,{variant:"tertiary",isBusy:_,disabled:_,onClick:()=>{g(!0),o(e._links.dismiss.href,y),g(!1),d(!0)}},(0,s.__)("Dismiss","woocommerce")))))},$=({incentive:e,provider:t,onboardingUrl:n,onAccept:o,onDismiss:c,setupPlugin:i})=>{const[r,l]=(0,a.useState)(!1),[m,d]=(0,a.useState)(!0),_="wc_settings_payments__modal",g=(0,O.o0)(e,_),y=()=>{d(!1)};return g?null:(0,a.createElement)(a.Fragment,null,m&&(0,a.createElement)(u.Modal,{title:"",className:"woocommerce-incentive-modal",onRequestClose:()=>{c(e._links.dismiss.href,_),y()}},(0,a.createElement)(u.Card,{className:"woocommerce-incentive-modal__card"},(0,a.createElement)("div",{className:"woocommerce-incentive-modal__content"},(0,a.createElement)(u.CardMedia,{className:"woocommerce-incentive-modal__media"},(0,a.createElement)("img",{src:p.vm+"images/settings-payments/incentives-illustration.svg",alt:(0,s.__)("Incentive illustration","woocommerce")})),(0,a.createElement)(u.CardBody,{className:"woocommerce-incentive-modal__body"},(0,a.createElement)("div",null,(0,a.createElement)(Z,{status:"has_incentive",message:(0,s.__)("Limited time offer","woocommerce")})),(0,a.createElement)("h2",null,e.title),(0,a.createElement)("p",null,e.description),(0,a.createElement)("p",{className:"woocommerce-incentive-modal__terms"},(0,a.createInterpolateElement)((0,s.__)("See <termsLink /> for details.","woocommerce"),{termsLink:(0,a.createElement)(B.Link,{href:e.tc_url,target:"_blank",rel:"noreferrer",type:"external"},(0,s.__)("Terms and Conditions","woocommerce"))})),(0,a.createElement)("div",{className:"woocommerce-incentive-model__actions"},(0,a.createElement)(u.Button,{variant:"primary",isBusy:r,disabled:r,onClick:()=>{l(!0),o(e.promo_id),c(e._links.dismiss.href,_),y(),i(t.id,t.plugin.slug,n),l(!1)}},e.cta_label)))))))},z=()=>{var e,t;const[n,r]=(0,a.useState)(null),[_,u]=(0,a.useState)(null),{installAndActivatePlugins:g}=(0,i.useDispatch)(c.PLUGINS_STORE_NAME),{updateProviderOrdering:p}=(0,i.useDispatch)(c.PAYMENT_SETTINGS_STORE_NAME),[y,w]=(0,a.useState)(null),[v,h]=(0,a.useState)(!1),[N,b]=(0,a.useState)(window.wcSettings?.admin?.woocommerce_payments_nox_profile?.business_country_code||null),f=new URLSearchParams(window.location.search);(0,a.useEffect)((()=>{"true"===f.get("test_drive_error")&&w((0,s.sprintf)((0,s.__)("%s: An error occurred while setting up your sandbox account — please try again.","woocommerce"),"WooPayments")),"1"===f.get("wcpay-connect-jetpack-error")&&w((0,s.sprintf)((0,s.__)("%s: There was a problem connecting your WordPress.com account — please try again.","woocommerce"),"WooPayments")),"true"===f.get("wcpay-sandbox-success")&&h(!0)}),[]);const S=(0,i.useSelect)((e=>e(c.PLUGINS_STORE_NAME).getInstalledPlugins()),[]),{invalidateResolutionForStoreSelector:k}=(0,i.useDispatch)(c.PAYMENT_SETTINGS_STORE_NAME),{providers:P,suggestions:T,suggestionCategories:C,isFetching:I}=(0,i.useSelect)((e=>({providers:e(c.PAYMENT_SETTINGS_STORE_NAME).getPaymentProviders(N),suggestions:e(c.PAYMENT_SETTINGS_STORE_NAME).getSuggestions(),suggestionCategories:e(c.PAYMENT_SETTINGS_STORE_NAME).getSuggestionCategories(),isFetching:e(c.PAYMENT_SETTINGS_STORE_NAME).isFetching()}))),A=(0,o.useCallback)(((e,t)=>{l()({url:e,method:"POST",data:{context:t}})}),[]),M=(0,o.useCallback)((e=>{l()({path:`/wc-analytics/admin/notes/experimental-activate-promo/${e}`,method:"POST"})}),[]),x=P.find((e=>"_incentive"in e)),R=x?x._incentive:null,B=(0,o.useCallback)(((e,t,a)=>{n||(!a&&(0,O.mz)(e)&&(a=(0,O.SN)()),r(e),g([t]).then((async n=>{var o;(0,d.a)(n),k("getPaymentProviders");const s=(await(0,i.resolveSelect)(c.PAYMENT_SETTINGS_STORE_NAME).getPaymentProviders(N)).find((n=>n.id===e||n?._suggestion_id===e||n.plugin.slug===t));if((null!==(o=s?.onboarding?.recommended_payment_methods)&&void 0!==o?o:[]).length>0)return(0,m.getHistory)().push((0,m.getNewPath)({},"/payment-methods")),void r(null);r(null),a&&(window.location.href=a)})).catch((e=>{(0,d.a)(e),r(null)})))}),[n,g,k,N]);return(0,a.createElement)(a.Fragment,null,x&&R&&(0,O.NI)(R)&&!(0,O.o0)(R,"wc_settings_payments__modal")&&(0,a.createElement)($,{incentive:R,provider:x,onboardingUrl:null!==(e=x.onboarding?._links.onboard.href)&&void 0!==e?e:null,onDismiss:A,onAccept:M,setupPlugin:B}),y&&(0,a.createElement)("div",{className:"notice notice-error is-dismissible wcpay-settings-notice"},(0,a.createElement)("p",null,y),(0,a.createElement)("button",{type:"button",className:"notice-dismiss",onClick:()=>{w(null)}})),x&&R&&!(0,O.NI)(R)&&!(0,O.o0)(R,"wc_settings_payments__banner")&&(0,a.createElement)(K,{incentive:R,provider:x,onboardingUrl:null!==(t=x.onboarding?._links.onboard.href)&&void 0!==t?t:null,onDismiss:A,onAccept:M,setupPlugin:B}),(0,a.createElement)("div",{className:"settings-payments-main__container"},(0,a.createElement)(W,{providers:_||P,installedPluginSlugs:S,installingPlugin:n,setupPlugin:B,acceptIncentive:M,updateOrdering:function(e){const t=e.map((e=>e._order)).sort(((e,t)=>e-t)),n={};e.forEach(((e,a)=>{n[e.id]=t[a]})),p(n),u(e)},isFetching:I,businessRegistrationCountry:N,setBusinessRegistrationCountry:b}),(0,a.createElement)(E,{suggestions:T,suggestionCategories:C,installingPlugin:n,setupPlugin:B,isFetching:I})),(0,a.createElement)(H,{isOpen:v&&(0,O.eP)(P),devMode:(0,O.Av)(P),onClose:()=>h(!1)}))},q=z}}]); |