import{proxyCustomElement,HTMLElement,h}from"@stencil/core/internal/client";import{a as apiFetch}from"./fetch.js";import{d as defineCustomElement$d}from"./sc-alert2.js";import{d as defineCustomElement$c}from"./sc-block-ui2.js";import{d as defineCustomElement$b}from"./sc-button2.js";import{d as defineCustomElement$a}from"./sc-card2.js";import{d as defineCustomElement$9}from"./sc-dashboard-module2.js";import{d as defineCustomElement$8}from"./sc-form2.js";import{d as defineCustomElement$7}from"./sc-form-control2.js";import{d as defineCustomElement$6}from"./sc-icon2.js";import{d as defineCustomElement$5}from"./sc-input2.js";import{d as defineCustomElement$4}from"./sc-password2.js";import{d as defineCustomElement$3}from"./sc-spinner2.js";import{d as defineCustomElement$2}from"./sc-visually-hidden2.js";const scWordpressPasswordEditCss=":host{display:block;position:relative}",ScWordpressPasswordEditStyle0=scWordpressPasswordEditCss,ScWordPressPasswordEdit=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.heading=void 0,this.successUrl=void 0,this.user=void 0,this.loading=void 0,this.error=void 0,this.enableValidation=!0}renderEmpty(){return h("slot",{name:"empty"},wp.i18n.__("User not found.","surecart"))}validatePassword(e){return!!new RegExp("^(?=.*?[#?!@$%^&*-]).{6,}$").test(e)}async handleSubmit(e){this.loading=!0,this.error="";try{const{password:s}=await e.target.getFormJson();await apiFetch({path:"wp/v2/users/me",method:"PATCH",data:{password:s,meta:{default_password_nag:!1}}}),this.successUrl?window.location.assign(this.successUrl):this.loading=!1}catch(e){this.error=(null==e?void 0:e.message)||wp.i18n.__("Something went wrong","surecart"),this.loading=!1}}render(){return h("sc-dashboard-module",{key:"9cd61c8c4ffec13d96ebf9c8dd101af50938f655",class:"customer-details",error:this.error},h("span",{key:"925cc949d186b12a1749cdf067dd7d75a1227c3b",slot:"heading"},this.heading||wp.i18n.__("Update Password","surecart")," "),h("slot",{key:"148b1d6b511814c6d6a07b25bbb9ab46d21d3a3e",name:"end",slot:"end"}),h("sc-card",{key:"e6f585526341af6240fa448eed021518b7395292"},h("sc-form",{key:"8a2a768536541af011f097e540692fd773718e32",onScFormSubmit:e=>this.handleSubmit(e)},h("sc-password",{key:"4a661359cc21111a17c0b1099cfd9b57894d6a41",enableValidation:this.enableValidation,label:wp.i18n.__("New Password","surecart"),name:"password",confirmation:!0,required:!0}),h("div",{key:"369a7b07ab525b624c78be518ae940814e87f945"},h("sc-button",{key:"3fb0f0c4dbdb86dcbf20cf8d4683977582c06e42",type:"primary",full:!0,submit:!0},wp.i18n.__("Update Password","surecart"))))),this.loading&&h("sc-block-ui",{key:"a1180161e90b8179aeae8b54c15320e7877a0a4a",spinner:!0}))}static get style(){return ScWordpressPasswordEditStyle0}},[1,"sc-wordpress-password-edit",{heading:[1],successUrl:[1,"success-url"],user:[16],enableValidation:[516,"enable-validation"],loading:[32],error:[32]}]);function defineCustomElement$1(){"undefined"!=typeof customElements&&["sc-wordpress-password-edit","sc-alert","sc-block-ui","sc-button","sc-card","sc-dashboard-module","sc-form","sc-form-control","sc-icon","sc-input","sc-password","sc-spinner","sc-visually-hidden"].forEach((e=>{switch(e){case"sc-wordpress-password-edit":customElements.get(e)||customElements.define(e,ScWordPressPasswordEdit);break;case"sc-alert":customElements.get(e)||defineCustomElement$d();break;case"sc-block-ui":customElements.get(e)||defineCustomElement$c();break;case"sc-button":customElements.get(e)||defineCustomElement$b();break;case"sc-card":customElements.get(e)||defineCustomElement$a();break;case"sc-dashboard-module":customElements.get(e)||defineCustomElement$9();break;case"sc-form":customElements.get(e)||defineCustomElement$8();break;case"sc-form-control":customElements.get(e)||defineCustomElement$7();break;case"sc-icon":customElements.get(e)||defineCustomElement$6();break;case"sc-input":customElements.get(e)||defineCustomElement$5();break;case"sc-password":customElements.get(e)||defineCustomElement$4();break;case"sc-spinner":customElements.get(e)||defineCustomElement$3();break;case"sc-visually-hidden":customElements.get(e)||defineCustomElement$2()}}))}const ScWordpressPasswordEdit=ScWordPressPasswordEdit,defineCustomElement=defineCustomElement$1;export{ScWordpressPasswordEdit,defineCustomElement};