1import{a as y,at as C,r as c,t as u,j as e,P as _,m as b,W as S,X as P,n as A,F as n,I as r,S as I,e as k,f as E,g as w,h as p,an as N,B as D}from"./app-Cmw2D6MA.js";import{P as F}from"./PaymentApiConfigService-BvKfy-Ea.js";import{C as T}from"./countryService-BUQmyx_y.js";import{S as q}from"./save-CDrqDKl7.js";import"./ApiRoute-BN4CwzK7.js";const $={provider:"",api_key:"",app_id:"",secret_key:"",endpoint:"",auth_type:"",is_active:!0,code_admin:"",code_super_admin:""},M=()=>{const m=y(),{countryId:l}=C(),[o,j]=c.useState(null),[s,d]=c.useState($),[g,h]=c.useState(!1);c.useEffect(()=>{if(!l){u.error("Aucun pays spécifié."),m("/admin/pays");return}T.show(l).then(a=>j(a==null?void 0:a.data)).catch(()=>{})},[l]);const i=a=>d(t=>({...t,[a.target.name]:a.target.value})),f=async a=>{var t,x;a.preventDefault(),h(!0);try{await F.ajout(l,s),u.success("Configuration créée avec succès !"),m(`/admin/pays/${l}/payment-api-configs`)}catch(v){u.error(((x=(t=v.response)==null?void 0:t.data)==null?void 0:x.message)||"Erreur lors de la création.")}finally{h(!1)}};return e.jsxs("div",{className:"mx-auto max-w-3xl",children:[e.jsx(_,{title:"Nouvelle configuration API",description:o!=null&&o.name?`Pays : ${o.name}`:void 0,breadcrumb:[{label:"Pays",href:"/admin/pays"},{label:"Configurations API",href:`/admin/pays/${l}/payment-api-configs`},{label:"Ajout"}]}),e.jsxs(b,{children:[e.jsx(S,{children:e.jsx(P,{children:"Informations"})}),e.jsx(A,{children:e.jsxs("form",{onSubmit:f,className:"grid gap-4 sm:grid-cols-2",children:[e.jsx(n,{label:"Fournisseur",required:!0,children:e.jsx(r,{name:"provider",value:s.provider,onChange:i})}),e.jsx(n,{label:"Clé API",children:e.jsx(r,{name:"api_key",value:s.api_key,onChange:i})}),e.jsx(n,{label:"App ID",children:e.jsx(r,{name:"app_id",value:s.app_id,onChange:i})}),e.jsx(n,{label:"Clé secrète",children:e.jsx(r,{name:"secret_key",value:s.secret_key,onChange:i})}),e.jsx(n,{label:"Endpoint",className:"sm:col-span-2",children:e.jsx(r,{name:"endpoint",value:s.endpoint,onChange:i})}),e.jsx(n,{label:"Type d'authentification",children:e.jsxs(I,{value:s.auth_type,onValueChange:a=>d(t=>({...t,auth_type:a})),children:[e.jsx(k,{children:e.jsx(E,{placeholder:"Sélectionnez"})}),e.jsxs(w,{children:[e.jsx(p,{value:"api_key",children:"Clé API"}),e.jsx(p,{value:"oauth2",children:"OAuth2"}),e.jsx(p,{value:"otp",children:"OTP"})]})]})}),e.jsx(n,{label:"Actif",children:e.jsx(N,{checked:!!s.is_active,onCheckedChange:a=>d(t=>({...t,is_active:a})),label:s.is_active?"Activée":"Désactivée"})}),e.jsx(n,{label:"Code admin",required:!0,children:e.jsx(r,{type:"password",name:"code_admin",value:s.code_admin,onChange:i})}),e.jsx(n,{label:"Code super admin",required:!0,children:e.jsx(r,{type:"password",name:"code_super_admin",value:s.code_super_admin,onChange:i})}),e.jsx("div",{className:"sm:col-span-2 flex justify-end",children:e.jsx(D,{type:"submit",loading:g,leftIcon:e.jsx(q,{size:16}),children:"Enregistrer"})})]})})]})]})};export{M as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.