1import{n as g,a0 as S,aF as E,X as p,Z as b}from"./index-DVu_w4ho.js";import{d as m}from"./duplicateGuardService-Bau-AUQB.js";const l=(e={})=>{const a=e.attributes||{};return{id:e.id,documentId:e.documentId||a.documentId||e.id,Nombre:e.Nombre||a.Nombre||a.nombre||"",Descripcion:e.Descripcion||a.Descripcion||a.descripcion||"",color:e.color||a.color||"#6366F1",orden:Number(e.orden??a.orden??0)||0,probabilidad:e.probabilidad??a.probabilidad??null,es_ganado:!!(e.es_ganado??a.es_ganado??!1),es_perdido:!!(e.es_perdido??a.es_perdido??!1),createdAt:e.createdAt||a.createdAt,updatedAt:e.updatedAt||a.updatedAt,publishedAt:e.publishedAt||a.publishedAt,...a}},c=E.create({baseURL:p.BASE_URL,timeout:p.TIMEOUT});c.interceptors.request.use(e=>{const a=localStorage.getItem(p.STORAGE_KEYS.AUTH_TOKEN)||p.AUTH_TOKEN;return a&&(e.headers.Authorization=`Bearer ${a}`),e.headers["Cache-Control"]="no-store, max-age=0",e.headers.Pragma="no-cache",e.headers.Expires="0",(e.method||"get").toLowerCase()==="get"&&(e.params={...e.params||{},_ts:Date.now()}),e},e=>Promise.reject(e));c.interceptors.response.use(e=>e,e=>(navigator.onLine&&b(e),Promise.reject(e)));const f={getSaleStages:async(e={})=>{var a,s,o,t;try{const{page:d=1,pageSize:n=10}=e,r=S({"pagination[page]":d,"pagination[pageSize]":n,sort:e.sort||"orden:asc,createdAt:asc",populate:"*"}),i=await c.get("/api/sales-stages",{params:r});return{success:!0,data:(i.data.data||[]).map(l),pagination:((a=i.data.meta)==null?void 0:a.pagination)||{}}}catch(d){return console.error("Error fetching sale stages:",d),{success:!1,error:((t=(o=(s=d.response)==null?void 0:s.data)==null?void 0:o.error)==null?void 0:t.message)||"Error al cargar etapas de venta",data:[]}}},getSaleStage:async e=>{var a,s,o;try{const t=await c.get(`/api/sales-stages/${e}`,{params:{populate:"*"}});return{success:!0,data:l(t.data.data)}}catch(t){return console.error("Error fetching sale stage:",t),{success:!1,error:((o=(s=(a=t.response)==null?void 0:a.data)==null?void 0:s.error)==null?void 0:o.message)||"Error al cargar etapa de venta"}}},createSaleStage:async e=>{var a,s,o,t,d;try{if((await m.exists({endpoint:"sales-stages",field:"Nombre",value:e==null?void 0:e.Nombre})).exists)return{success:!1,error:"Ya existe una etapa de negocio con ese nombre."};const r=await c.post("/api/sales-stages",{data:e}),i=JSON.parse(localStorage.getItem("user")||"{}");
1return i.id&&r.data.data&&g({moduleName:"Etapa de Venta",action:"created",record:r.data.data,recordId:((a=r.data.data)==null?void 0:a.documentId)||((s=r.data.data)==null?void 0:s.id),route:"/salestage",payload:e,creatorId:i.id}),{success:!0,data:l(r.data.data),message:"Etapa de venta creada exitosamente"}}catch(n){return console.error("Error creating sale stage:",n),{success:!1,error:((d=(t=(o=n.response)==null?void 0:o.data)==null?void 0:t.error)==null?void 0:d.message)||"Error al crear etapa de venta"}}},updateSaleStage:async(e,a)=>{var s,o,t,d,n;try{if((await m.exists({endpoint:"sales-stages",field:"Nombre",value:a==null?void 0:a.Nombre,excludeDocumentId:e})).exists)return{success:!1,error:"Ya existe una etapa de negocio con ese nombre."};const i=await c.get(`/api/sales-stages/${e}`),u=await c.put(`/api/sales-stages/${e}`,{data:a});return JSON.parse(localStorage.getItem("user")||"{}").id&&u.data.data&&g({moduleName:"Etapa de Venta",action:"updated",record:u.data.data,recordId:e,route:"/salestage",payload:a,creatorId:(o=(s=i.data.data)==null?void 0:s.createdBy)==null?void 0:o.id}),{success:!0,data:l(u.data.data),message:"Etapa de venta actualizada exitosamente"}}catch(r){return console.error("Error updating sale stage:",r),{success:!1,error:((n=(d=(t=r.response)==null?void 0:t.data)==null?void 0:d.error)==null?void 0:n.message)||"Error al actualizar etapa de venta"}}},deleteSaleStage:async(e,a="Etapa")=>{var s,o,t,d,n;try{const r=await c.get(`/api/sales-stages/${e}`);return await c.delete(`/api/sales-stages/${e}`),JSON.parse(localStorage.getItem("user")||"{}
1").id&&g({moduleName:"Etapa de Venta",action:"deleted",record:r.data.data,recordId:e,route:"/salestage",payload:{deleted:!0},creatorId:(o=(s=r.data.data)==null?void 0:s.createdBy)==null?void 0:o.id}),{success:!0,message:"Etapa de venta eliminada exitosamente"}}catch(r){return console.error("Error deleting sale stage:",r),{success:!1,error:((n=(d=(t=r.response)==null?void 0:t.data)==null?void 0:d.error)==null?void 0:n.message)||"Error al eliminar etapa de venta"}}}};export{f as S};
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.