import{h}from"@stencil/core";import{__}from"@wordpress/i18n";import apiFetch from"../../../../functions/fetch";export class ScWordPressPasswordEdit{constructor(){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"},__("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)||__("Something went wrong","surecart"),this.loading=!1}}render(){return h("sc-dashboard-module",{key:"feddccbc9dd30c4f3a70c24d6e25ad69d8ac47fd",class:"customer-details",error:this.error},h("span",{key:"c783193ecf26bf812f46a17aa5d49f4647f24985",slot:"heading"},this.heading||__("Update Password","surecart")," "),h("slot",{key:"85613aff2a44140892c3b2d3ea1e7e6fd76cb69e",name:"end",slot:"end"}),h("sc-card",{key:"d3f20009f4d1f3f2c588b6372da95965a1e6bbb8"},h("sc-form",{key:"51bfc24a84809d1b95a593e5c26ab7bc73dd464f",onScFormSubmit:e=>this.handleSubmit(e)},h("sc-password",{key:"e106ef9551824fa86ddbe2e8a738cd5f630230a6",enableValidation:this.enableValidation,label:__("New Password","surecart"),name:"password",confirmation:!0,required:!0}),h("div",{key:"86e8eb9cb1269515ff05ae9c82823847a1953919"},h("sc-button",{key:"f533e96120143bf8d79c2e7dd5cf3788befe6c5a",type:"primary",full:!0,submit:!0},__("Update Password","surecart"))))),this.loading&&h("sc-block-ui",{key:"acca448a76b4c6ded2ff7ba90395adaa182e834a",spinner:!0}))}static get is(){return"sc-wordpress-password-edit"}static get encapsulation(){return"shadow"}static get originalStyleUrls(){return{$:["sc-wordpress-password-edit.css"]}}static get styleUrls(){return{$:["sc-wordpress-password-edit.css"]}}static get properties(){return{heading:{type:"string",mutable:!1,complexType:{original:"string",resolved:"string",references:{}},required:!1,optional:!1,docs:{tags:[],text:""},attribute:"heading",reflect:!1},successUrl:{type:"string",mutable:!1,complexType:{original:"string",resolved:"string",references:{}},required:!1,optional:!1,docs:{tags:[],text:""},attribute:"success-url",reflect:!1},user:{type:"unknown",mutable:!1,complexType:{original:"WordPressUser",resolved:"WordPressUser",references:{WordPressUser:{location:"import",path:"../../../../types",id:"src/types.ts::WordPressUser"}}},required:!1,optional:!1,docs:{tags:[],text:""}},enableValidation:{type:"boolean",mutable:!1,complexType:{original:"boolean",resolved:"boolean",references:{}},required:!1,optional:!1,docs:{tags:[],text:"Ensures strong password validation."},attribute:"enable-validation",reflect:!0,defaultValue:"true"}}}static get states(){return{loading:{},error:{}}}}