@fctc/interface-logic 4.5.6 → 4.5.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunk-WEWWFI7Y.mjs +1 -0
- package/dist/hooks.mjs +1 -1
- package/dist/provider.d.mts +46 -102
- package/dist/provider.mjs +1 -1
- package/dist/services.mjs +1 -1
- package/package.json +1 -1
- package/dist/chunk-Y5QM3Y5X.mjs +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import {a as a$1}from'./chunk-LYD7QJQX.mjs';import {b,a,n,o}from'./chunk-Y65DQP66.mjs';import {a as a$2}from'./chunk-LCUY2BJU.mjs';import {d,f as f$1}from'./chunk-KPELPP6F.mjs';import {c}from'./chunk-CI6PEZ77.mjs';import {createContext,useCallback,useState,useContext,useMemo,useEffect}from'react';import {QueryClient,QueryClientProvider,useMutation,useQuery}from'@tanstack/react-query';import {jsx,Fragment}from'react/jsx-runtime';import {createClient}from'@supabase/supabase-js';var ae=({children:e})=>{let[t]=useState(()=>new QueryClient({defaultOptions:{queries:{refetchOnWindowFocus:false,refetchOnMount:false,refetchOnReconnect:false,retry:false}}}));return jsx(QueryClientProvider,{client:t,children:e})};var Lo=({children:e})=>jsx(ae,{children:e});var Mr={env:null,baseUrl:"",requests:null,companies:[],user:{},config:null,envFile:null,defaultCompany:{id:null,logo:"",secondary_color:"",primary_color:"",secondary_logo:""},context:{uid:null,lang:"vi_VN",tz:"Asia/Saigon"},excludeLanguages:[],isSupaMode:false},Mo=createContext(null);function Oo({children:e,localStorageUtils:t=a(),sessionStorageUtils:r=b}){let[o,s]=useState({...Mr,localStorageUtils:t,sessionStorageUtils:r}),n=useCallback(i=>{let p={...o,...i,localStorageUtils:t,sessionStorageUtils:r},b=a$1.init(p);return s({...p,requests:b}),p},[o,t,r]),a=useCallback(i=>{s(p=>({...p,context:{...p.context,uid:i}}));},[]),u=useCallback(i=>{s(p=>({...p,context:{...p.context,lang:i}}));},[]),m=useCallback(i=>{s(p=>({...p,context:{...p.context,allowed_company_ids:i}}));},[]),l=useCallback(i=>{s(p=>({...p,companies:i}));},[]),C=useCallback(i=>{s(p=>({...p,defaultCompany:i}));},[]),v=useCallback(i=>{s(p=>({...p,user:i}));},[]),c=useCallback(i=>{s(p=>({...p,config:i}));},[]),y=useCallback(i=>{s(p=>({...p,envFile:i}));},[]);return jsx(Mo.Provider,{value:{env:o,setupEnv:n,setUid:a,setLang:u,setAllowCompanies:m,setCompanies:l,setDefaultCompany:C,setUserInfo:v,setConfig:c,setEnvFile:y},children:e})}function G(){let e=useContext(Mo);if(!e)throw new Error("useEnv must be used within an EnvProvider");return e}function R(){let{env:e}=G(),t=useCallback(async({idAction:l,context:C,service:v,xNode:c,searchParams:y})=>{let i={action_id:l,with_context:{...C}},p=y?`/load_action?${n(y)}`:"/load_action";return e.requests.post(p,i,{headers:{"Content-Type":"application/json","X-Node":c}},v)},[e]),r=useCallback(async({model:l,ids:C=[],context:v,method:c,service:y,xNode:i})=>{try{let p={model:l,method:c,ids:C,with_context:v};return e.requests.post("/call",p,{headers:{"Content-Type":"application/json",...i?{"X-Node":i}:{}}},y)}catch(p){throw console.error("Error when calling button action:",p),p}},[e]),o=useCallback(async({model:l,ids:C,context:v,service:c,xNode:y})=>{let i={model:l,method:"unlink",ids:C,with_context:v};return e.requests.post("/call",i,{headers:{"Content-Type":"application/json"},...y?{"X-Node":y}:{}},c)},[e]),s=useCallback(async({model:l,id:C,context:v,service:c,xNode:y})=>{let i={model:l,method:"copy",ids:C,with_context:v};return e.requests.post("/call",i,{headers:{"Content-Type":"application/json"},...y?{"X-Node":y}:{}},c)},[e]),n$1=useCallback(async({id:l})=>{let C={model:"ir.actions.report",method:"web_read",id:l,kwargs:{specification:{report_name:{}}}};return e.requests.post("/call",C,{headers:{"Content-Type":"application/json"}})},[e]),a=useCallback(async({id:l,report:C,db:v})=>{let y=n({report:C,id:l,type:"pdf",file_response:true,db:v}),i=`/report?${y}`;return e.requests.get(i,{headers:{"Content-Type":"application/json"},responseType:"arraybuffer"})},[e]),u=useCallback(async({idAction:l,context:C,service:v,xNode:c,searchParams:y})=>{let i={action_id:l,with_context:{...C}},p=y?`/run_action?${n(y)}`:"/run_action";return e.requests.post(p,i,{headers:{"Content-Type":"application/json",...c?{"X-Node":c}:{}}},v)},[e]),m=useCallback(async({kwargs:l,context:C,service:v,xNode:c})=>{let y={model:"stock.move",method:"action_generate_lot_line_vals",with_context:{...C},kwargs:l};return e.requests.post("/call",y,{headers:{"Content-Type":"application/json"},...c?{"X-Node":c}:{}},v)},[e]);return {loadAction:t,callButton:r,removeRows:o,duplicateRecord:s,getPrintReportName:n$1,print:a,runAction:u,generateSerialNumber:m}}var xo=createContext(null),qo=({supabaseUrl:e,supabaseKey:t,schema:r="public",children:o})=>{let s=useMemo(()=>!e||!t?null:createClient(e,t,{db:{schema:r}}),[e,t,r]);return jsx(xo.Provider,{value:s,children:o})},No=()=>{let e=useContext(xo);if(!e)throw new Error("useSupabase must be used within a SupabaseProvider or check your env config");return e},L=()=>useContext(xo);function A(){let{env:e}=G(),t=L(),r=useCallback(async d=>{let g=Object.fromEntries(Object.entries({username:d.email,password:d.password,grant_type:e?.config?.grantType||"",client_id:e?.config?.clientId||"",client_secret:e?.config?.clientSecret||""}).filter(([w,S])=>!!S)),T=new URLSearchParams(g).toString();return e?.requests?.post(d.path,T,{headers:{"Content-Type":"application/x-www-form-urlencoded"}},d.service)},[e]),o=useCallback(async d=>{if(!t)return {data:null,error:{message:"Supabase client is not initialized"}};let{data:g,error:T}=await t.auth.signInWithPassword({email:d.email,password:d.password});return {data:g,error:T}},[t]),s=useCallback(async d=>{let g={login:d,url:`${window.location.origin}/reset-password`};return e?.requests?.post("/reset_password",g,{headers:{"Content-Type":"application/json"}})},[e]),n=useCallback(async({email:d,with_context:g,method:T})=>{let w={method:T,kwargs:{vals:{email:d}},with_context:g};return e?.requests?.post("/call",w,{headers:{"Content-Type":"application/json"}})},[e]),a=useCallback(async(d,g)=>{let T={token:g,password:d.password,new_password:d.confirmPassword};return e?.requests?.post("/change_password",T,{headers:{"Content-Type":"application/json"}})},[e]),u=useCallback(async({method:d,password:g,with_context:T})=>{let w={method:d,kwargs:{vals:{password:g}},with_context:T};return e?.requests?.post("/call",w,{headers:{"Content-Type":"application/json"}})},[e]),m=useCallback(async(d,g)=>{let T={token:g,old_password:d.oldPassword,new_password:d.newPassword};return e?.requests?.post("/change_password_parent",T,{headers:{"Content-Type":"application/json"}})},[e]),l=useCallback(async d=>{let g={token:d};return e?.requests?.post("/check_token",g,{headers:{"Content-Type":"application/json"}})},[e]),C=useCallback(async d=>{let g={};return e?.requests?.post("/action-token/validate",g,{headers:{"Content-Type":"application/json","X-Use-Action-Token":"true","X-Action-Token":d}})},[e]),v=useCallback(async({db:d,state:g,access_token:T})=>e?.requests?.post("/token/generate",{state:g,access_token:T},{headers:{"Content-Type":"application/json"}}),[e]),c=useCallback(async d=>e?.requests?.get("/oauth/providers",{params:{db:d}}),[e]),y=useCallback(async d=>{let g=new URLSearchParams;return g.append("code",d),g.append("grant_type","authorization_code"),g.append("client_id",e?.config?.clientId||""),g.append("redirect_uri",e?.config?.redirectUri||""),e?.requests?.post("/token",g,{headers:{"Content-Type":"application/x-www-form-urlencoded"}},"id")},[e]),i=useCallback(async d=>e?.requests?.post("/logout",{},{headers:{"Content-Type":"application/json","X-Use-Refresh-Token":"true"},withCredentials:true},d),[e]),p=useCallback(async({shortName:d,service:g})=>{let T={short_name:d};return e?.requests.post("/tenant-mapping",T,{headers:{"Content-Type":"application/json"}},g)},[e]),b=useCallback(async({phone:d,name:g,service:T,xNode:w})=>{let S={phone:d,name:g};return e?.requests.post("/emenu/auth/token",S,{headers:{"Content-Type":"application/json",...w?{"X-Node":w}:{}}},T)},[e]);return {login:r,loginSupabase:o,forgotPassword:s,forgotPasswordSSO:n,resetPassword:a,resetPasswordSSO:u,updatePassword:m,isValidToken:l,isValidActionToken:C,loginSocial:v,getProviders:c,getAccessByCode:y,logout:i,getTenantMapping:p,getToken:b}}function $(){let{env:e}=G(),t=useCallback(async(o,s)=>await e.requests.get("/company",{headers:s?{...s,"Content-Type":"application/json"}:{"Content-Type":"application/json"}},o),[e]),r=useCallback(async(o,s)=>{let n={ids:[o],model:"res.company",method:"web_read",kwargs:{specification:{primary_color:{},secondary_color:{},logo:{},display_name:{},secondary_logo:{}}}};return await e.requests.post("/call",n,{headers:{"Content-Type":"application/json"}},s)},[e]);return {getCurrentCompany:t,getInfoCompany:r}}function N(){let{env:e}=G(),t=useCallback(async({formData:m,service:l,xNode:C})=>e.requests.post("/upload/file",m,{headers:{"X-Node":C}},l),[e]),r=useCallback(async({formData:m,service:l,xNode:C})=>e.requests.post("/upload/file",m,{headers:{"X-Node":C}},l),[e]),o=useCallback(async({id:m,selectedSheet:l,isHeader:C,context:v,service:c,xNode:y})=>{let i={model:"base_import.import",method:"parse_preview",ids:[m],kwargs:{options:{import_skip_records:[],import_set_empty_fields:[],fallback_values:{},name_create_enabled_fields:{},encoding:"",separator:"",quoting:'"',date_format:"",datetime_format:"",float_thousand_separator:",",float_decimal_separator:".",advanced:true,has_headers:C,keep_matches:false,limit:2e3,sheets:[],sheet:l,skip:0,tracking_disable:true}},with_context:v};return e.requests.post("/call",i,{headers:{"Content-Type":"application/json","X-Node":y}},c)},[e]),s=useCallback(async({columns:m,fields:l,idFile:C,options:v,dryrun:c,context:y,service:i,xNode:p})=>{let b={model:"base_import.import",method:"execute_import",ids:[C],kwargs:{fields:l,columns:m,options:v,dryrun:c},with_context:y};return e.requests.post("/call",b,{headers:{"Content-Type":"application/json","X-Node":p}},i)},[e]),n=useCallback(async({model:m,service:l,xNode:C,context:v})=>{let c={model:m,method:"get_import_templates",args:[],context:v};return e.requests.post("/call",c,{headers:{"Content-Type":"application/json","X-Node":C}},l)},[e]),a=useCallback(async({ids:m,model:l,isShow:C,parentField:v,fieldType:c,parentName:y,prefix:i,name:p,context:b,importCompat:d,service:g,xNode:T})=>{let w={model:l,import_compat:d,domain:[["id","in",m]],with_context:b};return C&&(w.parent_field=v,w.parent_field_type=c,w.parent_name=y,w.name=p,w.prefix=i,w.exclude=[null]),e.requests.post("/export/get_fields",w,{headers:{"Content-Type":"application/json","X-Node":T}},g)},[e]),u=useCallback(async({model:m,domain:l,ids:C,fields:v,type:c,importCompat:y,context:i,groupby:p,service:b,xNode:d})=>{let g={model:m,domain:l,ids:C,import_compat:y,fields:v,with_context:i,groupby:p??[]};return e.requests.post_excel(`/export/${c}`,g,{headers:{"Content-Type":"application/json",...d?{"X-Node":d}:{}}},b)},[e]);return {uploadFileExcel:t,uploadIdFile:r,parsePreview:o,executeImport:s,getFileExcel:n,getFieldExport:a,exportExcel:u}}function F(){let{env:e}=G(),t=useCallback(async({data:c})=>{let y={thread_id:c.thread_id,thread_model:c.thread_model,limit:100,with_context:{lang:c.lang}};return e.requests.post("/chatter/thread/messages",y,{headers:{"Content-Type":"application/json"}})},[e]),r=useCallback(async({data:c,xNode:y,service:i})=>{let p={thread_id:c?.thread_id,thread_model:c?.thread_model,limit:c?.limit,with_context:c?.with_context,request_list:c?.request_list};return e.requests.post("/mail/thread/data",p,{headers:{"Content-Type":"application/json",...y?{"X-Node":y}:{}}},i)},[e]),o=useCallback(async({data:c,xNode:y,service:i})=>{let p={thread_id:c?.thread_id,thread_model:c?.thread_model,limit:c?.limit,with_context:c?.with_context};return e.requests.post("/mail/thread/messages",p,{headers:{"Content-Type":"application/json",...y?{"X-Node":y}:{}}},i)},[e]),s=useCallback(async({data:c})=>{let y={context:{tz:"Asia/Saigon",uid:2,allowed_company_ids:[1],mail_post_autofollow:false,temporary_id:142183.01},post_data:{body:c.message,message_type:"comment",attachment_ids:c.attachment_ids,attachment_tokens:[],subtype_xmlid:c.subtype},thread_id:Number(c.thread_id),thread_model:c.thread_model};return e.requests.post("/chatter/message/post",y,{headers:{"Content-Type":"application/json"}})},[e]),n=useCallback(async({data:c})=>{let y={attachment_ids:[],attachment_tokens:[],body:"",message_id:c.message_id};return e.requests.post("/chatter/message/update_content",y,{headers:{"Content-Type":"application/json"}})},[e]),a=useCallback(async({data:c})=>e.requests.get(`/web/image?filename=${c.filename}&unique=${c.checksum}&width=1920&height=300`,{headers:{"Content-Type":"application/json"}}),[e]),u=useCallback(async({formData:c,service:y,xNode:i})=>e.requests.post("/mail/attachment/upload",c,{headers:{...i?{"X-Node":i}:{}}},y),[e]),m=useCallback(async({formData:c,service:y,xNode:i,path:p})=>e.requests.post(p,c,{headers:{...i?{"X-Node":i}:{}}},y),[e]),l=useCallback(async({data:c})=>{let y={model:c.model,method:"get_formview_action",ids:c.id?[c.id]:[],with_context:c.context};return e.requests.post("/call",y,{headers:{"Content-Type":"application/json"}})},[e]),C=useCallback(async({data:c})=>{let y={[c.name]:c.stage_id},i={model:c.model,method:"web_save",with_context:{lang:c.lang,allowed_company_ids:[1],uid:2,search_default_my_ticket:true,search_default_is_open:true},ids:[c.id],kwargs:{vals:y,specification:{}}};return e.requests.post("/call",i,{headers:{"Content-Type":"application/json"}})},[e]),v=useCallback(async({method:c,context:y,service:i,xNode:p})=>e?.requests?.post("/call",{method:c,with_context:y},{headers:{"Content-Type":"application/json",...p?{"X-Node":p}:{}}},i),[e]);return {getComment:t,sentComment:s,deleteComment:n,getImage:a,uploadImage:u,getFormView:l,changeStatus:C,uploadFile:m,getThreadMessages:o,getThreadData:r,getExternalTab:v}}function z(){let{env:e}=G(),t=useCallback(async({model:o,width_context:s})=>{let n={model:o,method:"web_read_group",kwargs:{domain:[["stage_id.fold","=",false]],fields:["color:sum"],groupby:["stage_id"]},width_context:s};return e.requests.post("/call",n,{headers:{"Content-Type":"application/json"}})},[e]),r=useCallback(async({field:o,color:s,model:n,width_context:a})=>{let u={model:n,method:"read_progress_bar",kwargs:{domain:[],group_by:"stage_id",progress_bar:{colors:s,field:o}},width_context:a};return e.requests.post("/call",u,{headers:{"Content-Type":"application/json"}})},[e]);return {getGroups:t,getProgressBar:r}}function E(){let{env:e}=G(),t=useCallback(async({domain:i,spectification:p,model:b})=>{let d={model:b,method:"web_search_read",kwargs:{specification:p,domain:i,limit:100,offset:0}};return e.requests.post("/call",d,{headers:{"Content-Type":"application/json"}})},[e]),r=useCallback(async()=>{let i={model:"res.currency",method:"web_search_read",kwargs:{specification:{icon_url:{},name:{}},domain:[["active","=",true]],limit:100,offset:0}};return e.requests.post("/call",i,{headers:{"Content-Type":"application/json"}})},[e]),o=useCallback(async()=>{let i={model:"res.currency",method:"web_search_read",kwargs:{specification:{name:{},icon_url:{},rate_ids:{fields:{company_rate:{},sell:{}}}},domain:[["active","=",true]],limit:100,offset:0}};return e.requests.post("/call",i,{headers:{"Content-Type":"application/json"}})},[e]),s=useCallback(async({data:i,service:p,xNode:b,searchParams:d})=>{let g=i.type=="calendar"?{fields:i?.fields}:i.fields&&i.fields.length>0&&i.groupby&&i.groupby.length>0&&i.groupby[0]?{fields:i.fields,groupby:i.groupby}:{count_limit:10001,order:i.sort,specification:i.specification},T={model:String(i.model),method:i.type=="calendar"?"search_read":g.fields&&g.groupby?"web_read_group":"web_search_read",ids:i.ids,with_context:i.context,kwargs:{domain:i.domain,limit:i.limit,offset:i.offset,...g}},w=d?`/call?${n(d)}`:"/call";return e.requests.post(w,T,{headers:{"Content-Type":"application/json",...b?{"X-Node":b}:{}}},p)},[e]),n$1=useCallback(async({data:i})=>{let p=i.type=="calendar"?i?.fields:i.fields&&i.fields.length>0&&i.groupby&&i.groupby.length>0&&i.groupby[0]?{fields:i.fields,groupby:i.groupby}:{count_limit:10001,order:i.sort,specification:i.specification},b={model:String(i.model),method:i.type=="calendar"?"search_read":p.fields&&p.groupby?"web_read_group":"web_search_read",ids:i.ids,with_context:i.context,kwargs:{domain:i.domain,limit:i.limit,offset:i.offset,fields:i.fields,...p}};return e.requests.post("/call",b,{headers:{"Content-Type":"application/json"}})},[e]),a=useCallback(async({model:i,ids:p=[],specification:b={},domain:d=[],offset:g,order:T,context:w={},limit:S=10})=>{let h={model:i,method:"web_search_read",ids:p,with_context:w,kwargs:{specification:b,domain:d,limit:S,offset:g,order:T}};return e.requests.post("/call",h,{headers:{"Content-Type":"application/json"}})},[e]),u=useCallback(async({ids:i=[],model:p,specification:b,context:d,service:g,xNode:T})=>{let w={model:p,method:"web_read",ids:i,with_context:d,kwargs:{specification:b}};return e.requests.post("/call",w,{headers:{"Content-Type":"application/json",...T?{"X-Node":T}:{}}},g)},[e]),m=useCallback(async({model:i,ids:p=[],data:b={},specification:d={},context:g={},path:T,service:w,xNode:S})=>{let h={model:i,method:"web_save",with_context:g,ids:p,kwargs:{vals:b,specification:d}};return e.requests.post(T??"/call",h,{headers:{"Content-Type":"application/json",...S?{"X-Node":S}:{}}},w)},[e]),l=useCallback(async({ids:i=[],model:p,service:b})=>{let d={model:p,method:"unlink",ids:i};return e.requests.post("/call",d,{headers:{"Content-Type":"application/json"}},b)},[e]),C=useCallback(async({ids:i=[],model:p,object:b,specification:d,context:g,fieldChange:T,service:w,xNode:S})=>{let h={model:p,method:"onchange",ids:i,with_context:g,args:[b||{},T||[],d]};return e.requests.post("/call",h,{headers:{"Content-Type":"application/json",...S?{"X-Node":S}:{}}},w)},[e]),v=useCallback(async({model:i,service:p,xNode:b})=>{let d={model:i,method:"get_fields_onchange"};return e.requests.post("/call",d,{headers:{"Content-Type":"application/json",...b?{"X-Node":b}:{}}},p)},[e]),c=useCallback(i=>{for(let p in i)p==="display_name"&&delete i[p],!i[p]&&i[p]!==0&&(i[p]=false);return {...i}},[]),y=useCallback((i,p,b)=>{for(let d in i)i[d]===false?p&&b?p?.models?.[b]?.[d]?.type!=="boolean"&&(i[d]=null):i[d]=null:i[d]!==false&&b!==void 0&&(p?.models?.[b]?.[d]?.type==="one2many"||p?.models?.[b]?.[d]?.type==="many2many")&&(i[d]=(i[d]??=[])?.map(g=>{let T=p?.models?.[b]?.[d]?.relation;if(T!==void 0){if(p?.models?.[T])return g?.length>=3?y(g[2],p,T):y(g,p,T);if(g?.length>=3)return g[2];if(g!==0)return g}})?.filter(Boolean));return {...i}},[]);return {getListMyBankAccount:t,getCurrency:r,getConversionRate:o,getAll:s,getListCalendar:n$1,getList:a,getDetail:u,save:m,deleteApi:l,onChange:C,getListFieldsOnchange:v,parseORMOdoo:c,toDataJS:y}}function W(){let{env:e}=G(),t=useCallback(async(s,n,a)=>e?.requests?.get(n||"/userinfo",{headers:a?{...a,"Content-Type":"application/x-www-form-urlencoded"}:{"Content-Type":"application/x-www-form-urlencoded"}},s),[e]),r=useCallback(async({context:s,id:n})=>{let a={model:"res.users",method:"web_read",ids:[n],with_context:s,kwargs:{specification:{display_name:{},image_1920:{},name:{},login:{},email:{},password:{},visible_group_id:{fields:{id:{},display_name:{}}},company_id:{fields:{id:{},display_name:{}}}}}};return e.requests.post("/call",a,{headers:{"Content-Type":"application/json"}})},[e]),o=useCallback(async({id:s,values:n,service:a})=>{let u={model:"res.users",domain:[["id","=",s]],values:n};return e?.requests.post(c?.CREATE_UPDATE_PATH,u,{headers:{"Content-Type":"application/json"}},a)},[e]);return {getProfile:t,getUser:r,switchUserLocale:o}}function _(){let{env:e}=G(),t=useCallback(async({model:S,views:h,context:P={},options:D={},aid:O,service:V,xNode:Y,searchParams:ne})=>{let _o={load_filters:true,toolbar:true,action_id:O},br={model:S,method:"get_fields_view_v2",kwargs:{views:h,options:{...D,..._o}},with_context:P},Tr=ne?`/call?${n(ne)}`:"/call";return e?.requests?.post(Tr,br,{headers:{"Content-Type":"application/json",...Y?{"X-Node":Y}:{}}},V)},[e]),r=useCallback(async(S,h,P,D)=>{let O={model:"ir.ui.menu",method:"web_search_read",ids:[],with_context:S,kwargs:{specification:h,domain:P??["&",["is_display","=",true],"&",["active","=",true],["parent_id","=",false]]}};return e?.requests?.post("/call",O,{headers:{"Content-Type":"application/json"}},D)},[e]),o=useCallback(async(S,h)=>{let P={model:"ir.actions.act_window",method:"web_read",ids:[S],with_context:h,kwargs:{specification:{id:{},name:{},res_model:{},views:{},view_mode:{},mobile_view_mode:{},domain:{},context:{},groups_id:{},search_view_id:{}}}};return e?.requests?.post("/call",P,{headers:{"Content-Type":"application/json"}})},[e]),s=useCallback(async({model:S,ids:h,context:P,offset:D,service:O,xNode:V})=>{let Y={model:S,with_context:P,ids:h,field:"sequence",...D>0?{offset:D}:{}};return e?.requests.post("/web/dataset/resequence",Y,{headers:{"Content-Type":"application/json",...V?{"X-Node":V}:{}}},O)},[e]),n$1=useCallback(async({data:S,service:h,xNode:P})=>{let D={model:S.model,ids:[],method:"get_data_select",with_context:S.context,kwargs:{count_limit:10001,domain:S.domain?S.domain:[],offset:0,order:"",specification:S?.specification??{id:{},name:{},display_name:{}}}};return e?.requests.post("/call",D,{headers:{"Content-Type":"application/json",...P?{"X-Node":P}:{}}},h)},[e]),a=useCallback(async()=>e.requests.post("/load_message_failures",{},{headers:{"Content-Type":"application/json"}}),[e]),u=useCallback(async()=>e?.requests?.get("",{headers:{"Content-Type":"application/json"}}),[e]),m=useCallback(async({redirect_uri:S,state:h,client_id:P,scopes:D})=>{let O={redirect_uri:S,state:h,client_id:P,scopes:D};return e?.requests.post("/grant-access",O,{headers:{"Content-Type":"application/json"},withCredentials:true},"id")},[e]),l=useCallback(async({method:S,token:h})=>{let P={method:S,with_context:{token:h}};return e?.requests.post("/call",P,{headers:{"Content-Type":"application/json"}},"id")},[e]),C=useCallback(async({method:S,token:h})=>{let P={method:S,with_context:{token:h}};return e?.requests.post("/call",P,{headers:{"Content-Type":"application/json"}},"id")},[e]),v=useCallback(async({method:S,model:h,kwargs:P,token:D})=>{let O={method:S,model:h,kwargs:P,with_context:{token:D}};return e?.requests.post("/call",O,{headers:{"Content-Type":"application/json"}},"id")},[e]),c=useCallback(async({redirect_uri:S,state:h,client_id:P,response_type:D,path:O,scope:V})=>{let ne=`${new URLSearchParams({response_type:D,client_id:P,redirect_uri:S,state:h}).toString()}&scope=${encodeURIComponent(V)}`,_o=`${O}?${ne}`;return e?.requests.get(_o,{headers:{"Content-Type":"application/json"},withCredentials:true},"id")},[e]),y=useCallback(({method:S,with_context:h,code:P,device:D,location:O})=>{let V={method:S,kwargs:{vals:{code:P,device:D,location:O}},with_context:h};return e?.requests.post("/call",V,{headers:{"Content-Type":"application/json"},withCredentials:true},"id")},[e]),i=useCallback(({method:S,with_context:h})=>{let P={method:S,with_context:h};return e?.requests.post("/call",P,{headers:{"Content-Type":"application/json"}},"id")},[e]),p=useCallback(({method:S,action_token:h,code:P})=>{let D={method:S,kwargs:{vals:{code:P}},with_context:{action_token:h}};return e?.requests.post("/call",D,{headers:{"Content-Type":"application/json"}})},[e]),b=useCallback(async({service:S,xNode:h,body:P})=>e?.requests?.post("/mail/data",P,{headers:{"Content-Type":"application/json",...h?{"X-Node":h}:{}}},S),[e]),d=useCallback(async({service:S,xNode:h,ids:P,kwargs:D})=>{let O={model:"res.country",ids:P,method:"get_data_select",kwargs:D};return e?.requests?.post("/call",O,{headers:{"Content-Type":"application/json",...h?{"X-Node":h}:{}}},S)},[e]),g=useCallback(async({service:S,xNode:h,ids:P,kwargs:D})=>{let O={model:"res.country.state",ids:P,method:"get_data_select",kwargs:D};return e?.requests?.post("/call",O,{headers:{"Content-Type":"application/json",...h?{"X-Node":h}:{}}},S)},[e]),T=useCallback(async({service:S,xNode:h,kwargs:P})=>{let D={model:"res.country.ward",method:"get_data_select",kwargs:P};return e?.requests?.post("/call",D,{headers:{"Content-Type":"application/json",...h?{"X-Node":h}:{}}},S)},[e]),w=useCallback(async({service:S,xNode:h,kwargs:P,withContext:D})=>{let O={model:"res.partner.title",method:"get_data_select",kwargs:P,with_context:D};return e?.requests?.post("/call",O,{headers:{"Content-Type":"application/json",...h?{"X-Node":h}:{}}},S)},[e]);return {getView:t,getMenu:r,getActionDetail:o,getResequence:s,getSelectionItem:n$1,loadMessages:a,getVersion:u,grantAccess:m,removeTotpSetUp:l,requestSetupTotp:C,settingsWebRead2fa:v,signInSSO:c,verify2FA:y,get2FAMethods:i,verifyTotp:p,getNotifications:b,getCountry:d,getCity:g,getWard:T,getPartnerTitle:w}}function J(){let{env:e}=G(),t=useCallback(async({service:o,xNode:s,body:n})=>e.requests.post("/read_group",n,{headers:{"Content-Type":"application/json","X-Node":s}},o),[e]),r=useCallback(async({service:o,xNode:s,body:n,path:a,method:u="POST"})=>{let m={"Content-Type":"application/json","X-Node":s};return u==="GET"?e.requests.get(a,{headers:m},o):e.requests.post(a,n,{headers:m},o)},[e]);return {readGroup:t,getDataChart:r}}var Io=e=>({getASession:useCallback(async({model:r,args:o,domain:s,service:n,xNode:a})=>{let u={model:r,method:"web_search_read",args:o,kwargs:{domain:[s],specification:{name:{},user_id:{},config_id:{},start_at:{},stop_at:{},sequence_number:{},login_number:{},payment_method_ids:{},state:{},update_stock_at_closing:{},cash_register_balance_start:{}}}};return e?.requests.post("/call",u,{headers:{"Content-Type":"application/json",...a?{"X-Node":a}:{}}},n)},[e])});var Ho=e=>({addEntity:useCallback(({model:r,values:o,xNode:s,service:n,isCreateEndpoint:a=false,isSupa:u=false,supaCallback:m})=>{if(u&&m)return m(o);let l={model:r,values:o};return e?.requests.post(a?"/create":"/call",l,{headers:{"Content-Type":"application/json",...s?{"X-Node":s}:{}}},n)},[e])});var Vo=e=>({changeOrderPreparationState:useCallback(({orderId:r,stageId:o,preparationDisplayId:s,xNode:n,service:a})=>{let u={model:"pos_preparation_display.order",method:"change_order_stage",ids:r,kwargs:{stage_id:o,preparation_display_id:s}};return e?.requests.post("/call",u,{headers:{"Content-Type":"application/json",...n?{"X-Node":n}:{}}},a)},[e])});var Bo=e=>({checkPayment:useCallback(({model:r,ids:o,withContext:s,xNode:n,service:a})=>{let u={model:r,method:"check",ids:o,with_context:s};return e?.requests.post("/call",u,{headers:{"Content-Type":"application/json",...n?{"X-Node":n}:{}}},a)},[e])});var Xo=e=>({createEInvoice:useCallback(async({service:r,xNode:o,kwargs:s,ids:n,withContext:a})=>{let u={model:"pos.order",method:"create_e_invoice",kwargs:s,ids:n,with_context:a};return e?.requests?.post("/call",u,{headers:{"Content-Type":"application/json",...o?{"X-Node":o}:{}}},r)},[e])});var Wo=e=>({createEntity:useCallback(({model:r,args:o,xNode:s,service:n,isSupa:a=false,supaCallback:u})=>{if(a&&u)return u(o);let m={model:r,method:"create",args:o};return e?.requests.post("/call",m,{headers:{"Content-Type":"application/json",...s?{"X-Node":s}:{}}},n)},[e])});var Qo=e=>({createPosConfig:useCallback(({model:r,name:o,modulePosRestaurant:s,xNode:n,service:a})=>{let u={model:r,values:{name:o,module_pos_restaurant:s}};return e?.requests.post("/create",u,{headers:{"Content-Type":"application/json",...n?{"X-Node":n}:{}}},a)},[e])});var Ko=e=>({createSession:useCallback(({model:r,configId:o,xNode:s,service:n})=>{let a={model:r,method:"create",args:[{config_id:o}]};return e?.requests.post("/call",a,{headers:{"Content-Type":"application/json",...s?{"X-Node":s}:{}}},n)},[e])});var $o=e=>({deleteEntity:useCallback(({model:r,ids:o,xNode:s,service:n,method:a,isSupa:u=false,supaCallback:m})=>{if(u&&m)return m(o);let l={model:r,ids:o,method:a};return e?.requests.post("/call",l,{headers:{"Content-Type":"application/json",...s?{"X-Node":s}:{}}},n)},[e])});var zo=e=>({generatePaymentQRInfo:useCallback(({orderId:r,amount:o,posSessionId:s,xNode:n,service:a})=>{let u={order_id:r,amount:o,pos_session_id:s};return e?.requests.post("/payment/qr",u,{headers:{"Content-Type":"application/json",...n?{"X-Node":n}:{}}},a)},[e])});var Jo=e=>({getCurrentUser:useCallback(async({service:r,xNode:o,oauthUid:s,extraHeaders:n})=>e?.requests?.get(`/public/user/info/${s}`,{headers:n?{...n,"Content-Type":"application/json",...o?{"X-Node":o}:{}}:{"Content-Type":"application/json",...o?{"X-Node":o}:{}}},r),[e])});var Yo=e=>({getList:useCallback(async({model:r,domain:o$1,xNode:s,service:n,specification:a,offset:u,limit:m})=>{let l={model:r,method:"web_search_read",kwargs:o({domain:o$1,offset:u,limit:m,specification:a})};return e?.requests.post("/call",l,{headers:{"Content-Type":"application/json",...s?{"X-Node":s}:{}}},n)},[e])});var Zo=e=>({getOrderLine:useCallback(({model:r,ids:o,specification:s,xNode:n,service:a})=>{let u={model:r,method:"web_read",ids:o,kwargs:{specification:s}};return e?.requests.post("/call",u,{headers:{"Content-Type":"application/json",...n?{"X-Node":n}:{}}},a)},[e])});var er=e=>({getPinCode:useCallback(({serialNumber:r,xNode:o,service:s})=>{let n={serial_number:r};return e?.requests.post("/pos_device/get_pin_code",n,{headers:{"Content-Type":"application/json",...o?{"X-Node":o}:{}}},s)},[e])});var tr=e=>({getPOS:useCallback(({model:r,args:o,domain:s,xNode:n,service:a})=>{let u={model:r,method:"web_search_read",args:o,kwargs:{domain:s,specification:{cash_control:{},current_session_id:{fields:{display_name:{}}},current_session_state:{},pos_session_state:{},pos_session_duration:{},currency_id:{fields:{display_name:{}}},name:{},pos_session_username:{},last_session_closing_date:{},last_session_closing_cash:{},number_of_rescue_session:{},current_user_id:{fields:{display_name:{}}},customer_display_type:{},module_pos_restaurant:{}}}};return e?.requests.post("/call",u,{headers:{"Content-Type":"application/json",...n?{"X-Node":n}:{}}},a)},[e])});var or=e=>({getPreparationDisplayData:useCallback(({ids:r,xNode:o,service:s,withContext:n})=>{let a={model:"pos_preparation_display.display",method:"get_preparation_display_data",ids:r,with_context:n};return e?.requests.post("/call",a,{headers:{"Content-Type":"application/json",...o?{"X-Node":o}:{}}},s)},[e])});var rr=e=>({getProductImage:useCallback(({model:r,fields:o,limit:s,offset:n$1,domain:a,xNode:u,service:m,searchParams:l})=>{let C={model:r,fields:o,limit:s,offset:n$1,domain:a},v=l?`/search_read?${n(l)}`:"/search_read";return e?.requests.post(v,C,{headers:{"Content-Type":"application/json",...u?{"X-Node":u}:{}}},m)},[e])});var sr=e=>({handleCloseSession:useCallback(({model:r,ids:o,xNode:s,service:n,method:a})=>{let u={model:r,ids:o,method:a};return e?.requests.post("/call",u,{headers:{"Content-Type":"application/json",...s?{"X-Node":s}:{}}},n)},[e])});var nr=e=>({handleClosingDetailSession:useCallback(({model:r,ids:o,method:s,xNode:n,service:a,kwargs:u})=>{let m={model:r,ids:o,method:s,kwargs:u};return e?.requests.post("/call",m,{headers:{"Content-Type":"application/json",...n?{"X-Node":n}:{}}},a)},[e])});var ar=e=>({handleClosingSession:useCallback(({model:r,method:o,ids:s,kwargs:n,xNode:a,service:u})=>{let m={model:r,method:o,ids:s,kwargs:n};return e?.requests.post("/call",m,{headers:{"Content-Type":"application/json",...a?{"X-Node":a}:{}}},u)},[e])});var bo=(e,t=[])=>({modelName:e,data:t,fields:{},relations:{}}),ur=e=>{let t=L(),r=useCallback(async({model:s,ids:n$1,xNode:a,service:u,withContext:m,modelsToLoad:l=[],searchParams:C})=>{let v={model:s,method:"load_data",ids:n$1,with_context:m||{uid:37,lang:"vi_VN",tz:"Asia/Saigon"},kwargs:{models_to_load:l}},c=C?`/call?${n(C)}`:"/call";return e?.requests.post(c,v,{headers:{"Content-Type":"application/json",...a?{"X-Node":a}:{}}},u)},[e]),o=useCallback(async()=>{if(!t)return {};try{let s=Object.values(d);return (await Promise.all(s.map(async a=>{let u=f$1[a];if(!u)return bo(a);let{data:m,error:l}=await t.from(u).select("*");return l?(console.error(`Error loading ${a}:`,l),bo(a)):bo(a,m||[])}))).reduce((a,{modelName:u,...m})=>(a[u]=m,a),{})}catch(s){return console.error("Error loading data from Supabase:",s),{}}},[t]);return {loadDataPosSession:r,loadDataPosSessionSupabase:o}};var pr=e=>({manageOnChange:useCallback(({model:r,ids:o,args:s,xNode:n,service:a})=>{let u={model:r,method:"onchange",ids:o,args:s};return e?.requests.post("/call",u,{headers:{"Content-Type":"application/json",...n?{"X-Node":n}:{}}},a)},[e])});var cr=e=>({manageSession:useCallback(({model:r,method:o,ids:s,args:n,kwargs:a,xNode:u,service:m})=>{let l={model:r,method:o,ids:s,args:n,kwargs:a};return e?.requests.post("/call",l,{headers:{"Content-Type":"application/json",...u?{"X-Node":u}:{}}},m)},[e])});var mr=e=>({processOrder:useCallback(({orderId:r,xNode:o,service:s})=>{let n={model:"pos_preparation_display.order",method:"process_order",kwargs:{order_id:r}};return e?.requests.post("/call",n,{headers:{"Content-Type":"application/json",...o?{"X-Node":o}:{}}},s)},[e])});var dr=e=>({savePinCode:useCallback(({serialNumber:r,pinCode:o,xNode:s,service:n})=>{let a={serial_number:r,pin_code:o};return e?.requests.put("/pos_device/pin",a,{headers:{"Content-Type":"application/json",...s?{"X-Node":s}:{}}},n)},[e])});var lr=e=>({searchJournal:useCallback(({model:r,method:o,args:s,kwargs:n,xNode:a,service:u})=>{let m={model:r,method:o,args:s,kwargs:n};return e?.requests.post("/call",m,{headers:{"Content-Type":"application/json",...a?{"X-Node":a}:{}}},u)},[e])});var fr=e=>({updateClosedSession:useCallback(({model:r,domain:o,values:s,service:n,xNode:a})=>{let u={model:r,domain:o,values:s};return e?.requests.post("/create_update",u,{headers:{"Content-Type":"application/json",...a?{"X-Node":a}:{}}},n)},[e])});var yr=e=>({updateEntity:useCallback(({model:r,domain:o,values:s,isCreateEndpoint:n=true,xNode:a,service:u,isSupa:m=false,supaCallback:l})=>{if(m&&l)return l(s);let C={model:r,domain:o,values:s};return e?.requests.post(n?"/create_update":"/call",C,{headers:{"Content-Type":"application/json",...a?{"X-Node":a}:{}}},u)},[e])});var gr=e=>({updateOrderStatus:useCallback(({orderId:r,state:o,xNode:s,service:n})=>{let a={order_id:r,state:o};return e?.requests.put("/pos-order/status",a,{headers:{"Content-Type":"application/json",...s?{"X-Node":s}:{}}},n)},[e])});var Sr=e=>({completeCurrentStage:useCallback(({ids:r,withContext:o,xNode:s,service:n,requestStageId:a})=>{let u={model:"pos_preparation_display.orderline",method:"complete_current_stage",ids:r,kwargs:{request_stage_id:a},with_context:o||{lang:"vi_VN",tz:"Asia/Ho_Chi_Minh",uid:2}};return e?.requests.post("/call",u,{headers:{"Content-Type":"application/json",...s?{"X-Node":s}:{}}},n)},[e])});var Z=()=>{let e=L();return {addFloorSupabase:useCallback(async r=>{if(!e)return console.error("Supabase client not initialized"),null;try{let{data:o,error:s}=await e.from("restaurant_floors").insert({name:r.name,sequence:r.sequence??1,pos_config_ids:r.pos_config_ids??[],table_ids:r.table_ids??[]}).select("id, name").single();return s?(console.error("Error adding floor:",s),null):[[o.id,o.name]]}catch(o){return console.error("Error adding floor:",o),null}},[e])}};var ee=()=>{let e=L();return {addTableSupabase:useCallback(async r=>{if(!e)return console.error("Supabase client not initialized"),null;try{let{data:o,error:s}=await e.from("restaurant_tables").insert({floor_id:r.floor_id,table_number:r.table_number??0,seats:r.seats??1}).select("id, table_number").single();return s?(console.error("Error adding table:",s),null):[[o.id,o.table_number]]}catch(o){return console.error("Error adding table:",o),null}},[e])}};var te=()=>{let e=L();return {updateFloorSupabase:useCallback(async r=>{if(!e)return console.error("Supabase client not initialized"),false;try{let{id:o,...s}=r,{error:n}=await e.from("restaurant_floors").update(s).eq("id",o);return n?(console.error("Error updating floor:",n),!1):!0}catch(o){return console.error("Error updating floor:",o),false}},[e])}};var oe=()=>{let e=L();return {updateTableSupabase:useCallback(async r=>{if(!e)return console.error("Supabase client not initialized"),false;try{let{id:o,...s}=r,{error:n}=await e.from("restaurant_tables").update(s).eq("id",o);return n?(console.error("Error updating table:",n),!1):!0}catch(o){return console.error("Error updating table:",o),false}},[e])}};var re=()=>{let e=L();return {deleteFloorSupabase:useCallback(async r=>{if(!e)return console.error("Supabase client not initialized"),false;try{let{error:o}=await e.from("restaurant_floors").delete().eq("id",r.id);return o?(console.error("Error deleting floor:",o),!1):!0}catch(o){return console.error("Error deleting floor:",o),false}},[e])}};var se=()=>{let e=L();return {deleteTableSupabase:useCallback(async r=>{if(!e)return console.error("Supabase client not initialized"),false;try{let{error:o}=await e.from("restaurant_tables").delete().eq("id",r.id);return o?(console.error("Error deleting table:",o),!1):!0}catch(o){return console.error("Error deleting table:",o),false}},[e])}};var _s=[Ho,Io,Vo,Bo,Xo,Wo,Qo,Ko,$o,zo,Jo,Yo,Zo,er,tr,or,rr,sr,nr,ar,ur,pr,cr,mr,dr,lr,fr,yr,gr,Sr,Z,ee,te,oe,re,se],f=()=>{let{env:e}=G(),t={};for(let r of _s){let o=r(e);Object.assign(t,o);}return t};var vs=()=>{let{forgotPassword:e}=A();return useMutation({mutationFn:t=>e(t)})},ie=vs;var Ts=()=>{let{forgotPasswordSSO:e}=A();return useMutation({mutationFn:({email:t,with_context:r,method:o})=>e({email:t,with_context:r,method:o})})},ue=Ts;var As=()=>{let{getProviders:e}=A();return useMutation({mutationFn:t=>e(t?.db)})},pe=As;var Es=()=>{let{isValidToken:e}=A();return useMutation({mutationFn:t=>e(t)})},ce=Es;var Ds=()=>{let{login:e}=A();return useMutation({mutationFn:t=>e(t)})},me=Ds;var Ls=()=>{let{loginSocial:e}=A();return useMutation({mutationFn:t=>e(t)})},de=Ls;var Os=()=>{let{loginSupabase:e}=A();return useMutation({mutationFn:t=>e({email:t.email,password:t.password})})},le=Os;var qs=()=>{let{resetPassword:e}=A();return useMutation({mutationFn:t=>e(t.data,t.token)})},fe=qs;var Us=()=>{let{resetPasswordSSO:e}=A();return useMutation({mutationFn:({method:t,password:r,with_context:o})=>e({method:t,password:r,with_context:o})})},ye=Us;var js=()=>{let{updatePassword:e}=A();return useMutation({mutationFn:t=>e(t.data,t.token)})},ge=js;var Hs=()=>{let{logout:e}=A();return useMutation({mutationFn:t=>e(t)})},Se=Hs;var Bs=()=>{let{getAccessByCode:e}=A();return useMutation({mutationFn:({code:t})=>e(t)})},Ce=Bs;var Ws=()=>{let{isValidActionToken:e}=A();return useMutation({mutationFn:({actionToken:t})=>e(t)})},he=Ws;var Ks=()=>{let{getTenantMapping:e}=A();return useMutation({mutationFn:({shortName:t,service:r})=>e({shortName:t,service:r})})},_e=Ks;var zs=()=>{let{getToken:e}=A();return useMutation({mutationFn:({phone:t,name:r,service:o,xNode:s})=>e({phone:t,name:r,service:o,xNode:s})})},xe=zs;var Ys=()=>{let{getInfoCompany:e}=$();return useMutation({mutationFn:({service:t,id:r})=>e(r,t)})},ve=Ys;var en=()=>{let{getCurrentCompany:e}=$();return useMutation({mutationFn:({service:t,extraHeaders:r})=>e(t,r)})},be=en;var on=(e=[])=>{let{getList:t}=E(),r={id:{},name:{}},o={model:"res.company",ids:e,specification:r};return useQuery({queryKey:["list_company",e],queryFn:()=>t(o),refetchOnWindowFocus:false})},Te=on;var sn=()=>{let{exportExcel:e}=N();return useMutation({mutationFn:({model:t,domain:r,ids:o,fields:s,type:n,importCompat:a,context:u,groupby:m,service:l,xNode:C})=>e({model:t,domain:r,ids:o,fields:s,type:n,importCompat:a,context:u,groupby:m,service:l,xNode:C})})},Pe=sn;var an=()=>{let{getFieldExport:e}=N();return useMutation({mutationFn:({ids:t,model:r,isShow:o,parentField:s,fieldType:n,parentName:a,prefix:u,name:m,context:l,importCompat:C,service:v,xNode:c})=>e({ids:t,model:r,isShow:o,parentField:s,fieldType:n,parentName:a,prefix:u,name:m,context:l,importCompat:C,service:v,xNode:c})})},Ae=an;var pn=({model:e,service:t,xNode:r,context:o})=>{let{getFileExcel:s}=N();return useQuery({queryKey:["excel",e],queryFn:()=>s({model:e,service:t,xNode:r,context:o}).then(n=>n||[]),refetchOnWindowFocus:false})},Ge=pn;var mn=()=>{let{parsePreview:e}=N();return useMutation({mutationFn:({id:t,selectedSheet:r,isHeader:o,context:s,service:n,xNode:a})=>e({id:t,selectedSheet:r,isHeader:o,context:s,service:n,xNode:a})})},Ee=mn;var ln=()=>{let{uploadFileExcel:e}=N();return useMutation({mutationFn:({formData:t,service:r,xNode:o})=>e({formData:t,service:r,xNode:o})})},we=ln;var yn=()=>{let{uploadIdFile:e}=N();return useMutation({mutationFn:({formData:t,service:r,xNode:o})=>e({formData:t,service:r,xNode:o})})},De=yn;var Sn=()=>{let{executeImport:e}=N();return useMutation({mutationFn:({fields:t,columns:r,idFile:o,options:s,dryrun:n,context:a,service:u,xNode:m})=>e({fields:t,columns:r,idFile:o,options:s,dryrun:n,context:a,service:u,xNode:m})})},Fe=Sn;var hn=()=>{let{changeStatus:e}=F();return useMutation({mutationFn:({data:t})=>e({data:t})})},Le=hn;var xn=()=>{let{deleteComment:e}=F();return useMutation({mutationFn:({data:t})=>e({data:t})})},Me=xn;var bn=({data:e,queryKey:t})=>{let{getComment:r}=F();return useQuery({queryKey:t,queryFn:()=>r({data:e}).then(o=>{if(o)return o}),enabled:!!e.thread_id&&!isNaN(e.thread_id),refetchOnWindowFocus:false})},Oe=bn;var Pn=({data:e,queryKey:t,enabled:r})=>{let{getFormView:o}=F();return useQuery({queryKey:t,queryFn:()=>o({data:e}).then(s=>{if(s)return s}),enabled:r,refetchOnWindowFocus:false})},Re=Pn;var Gn=()=>{let{sentComment:e}=F();return useMutation({mutationFn:({data:t})=>e({data:t})})},qe=Gn;var wn=()=>{let{uploadImage:e}=F();return useMutation({mutationFn:({formData:t,service:r,xNode:o})=>e({formData:t,service:r,xNode:o})})},Ne=wn;var Fn=()=>{let{uploadFile:e}=F();return useMutation({mutationFn:({formData:t,service:r,xNode:o,path:s})=>e({formData:t,service:r,xNode:o,path:s})})},Ue=Fn;var Mn=({data:e,queryKey:t,enabled:r,service:o,xNode:s})=>{let{getThreadData:n}=F();return useQuery({queryKey:t,queryFn:()=>n({data:e,service:o,xNode:s}).then(a=>{if(a)return a}),enabled:r,refetchOnWindowFocus:false})},ke=Mn;var Rn=({data:e,queryKey:t,enabled:r,service:o,xNode:s})=>{let{getThreadMessages:n}=F();return useQuery({queryKey:t,queryFn:()=>n({data:e,service:o,xNode:s}).then(a=>{if(a)return a}),enabled:r,refetchOnWindowFocus:false})},je=Rn;var Nn=({data:e,queryKey:t,enabled:r,service:o,xNode:s})=>{let{getExternalTab:n}=F();return useQuery({queryKey:t,queryFn:()=>n({method:e?.method,context:e?.context,service:o,xNode:s}).then(a=>{if(a)return a}),enabled:r,refetchOnWindowFocus:false})},Ie=Nn;var kn=()=>{let{deleteApi:e}=E();return useMutation({mutationFn:({ids:t,model:r,service:o})=>e({ids:t,model:r,service:o})})},He=kn;var In=({data:e,queryKey:t,viewResponse:r})=>{let{getAll:o}=E();return useQuery({queryKey:t,queryFn:()=>o({data:e}).then(s=>{if(s)return s}),enabled:!!e.specification&&!!e.model&&!!e.domain&&!!r,refetchOnWindowFocus:false})},Ve=In;var Vn=()=>{let{getConversionRate:e}=E();return useQuery({queryKey:["currency-rate"],queryFn:()=>e().then(t=>{if(t)return t}),enabled:true})},Be=Vn;var Xn=()=>{let{getCurrency:e}=E();return useQuery({queryKey:["currency"],queryFn:()=>e().then(t=>{if(t)return t}),enabled:true})},Xe=Xn;var Qn=()=>{let{getDetail:e}=E();return useMutation({mutationFn:({model:t,ids:r,specification:o,context:s,service:n,xNode:a})=>e({model:t,ids:r,specification:o,context:s,service:n,xNode:a})})},We=Qn;var $n=({model:e,service:t,xNode:r,enabled:o})=>{let{getListFieldsOnchange:s}=E();return useQuery({queryKey:[`field-onchange-${e}`,e],queryFn:()=>s({model:e,service:t,xNode:r}).then(n=>{if(n)return n}),refetchOnWindowFocus:false,enabled:o,staleTime:1/0})},Qe=$n;var Jn=({domain:e,spectification:t,model:r})=>{let{getListMyBankAccount:o}=E();return useQuery({queryKey:["bank-account",r,e],queryFn:()=>o({domain:e,spectification:t,model:r}).then(s=>{if(s)return s}),enabled:true})},Ke=Jn;var Zn=()=>({initModel:useCallback(t=>{switch(t?.name){default:return new a$2(t)}},[])}),$e=Zn;var ea=()=>{let{toDataJS:e,parseORMOdoo:t}=E();return {toDataJS:e,parseORM:t}},ze=ea;var oa=()=>{let{onChange:e}=E();return useMutation({mutationFn:({ids:t,model:r,specification:o,context:s,object:n,fieldChange:a,service:u,xNode:m})=>e({ids:t,model:r,specification:o,context:s,object:n,fieldChange:a,service:u,xNode:m})})},Je=oa;var sa=()=>{let{save:e}=E();return useMutation({mutationFn:({ids:t,model:r,data:o,specification:s,context:n,path:a,service:u,xNode:m})=>e({ids:t,model:r,data:o,specification:s,context:n,path:a,service:u,xNode:m})})},Ye=sa;var aa=(e,t,r)=>{let{getProfile:o}=W();return useMutation({mutationFn:()=>o(e,t,r)})},Ze=aa;var ua=()=>{let{getUser:e}=W();return useMutation({mutationFn:({id:t,context:r})=>e({id:t,context:r})})},et=ua;var ca=()=>{let{switchUserLocale:e}=W();return useMutation({mutationFn:({data:t,service:r})=>e({id:t.data.id,values:t.data.values,service:r})})},tt=ca;var da=()=>{let{callButton:e}=R();return useMutation({mutationFn:({model:t,ids:r,context:o,method:s,service:n,xNode:a})=>e({model:t,ids:r,context:o,method:s,service:n,xNode:a}),onSuccess:t=>t})},ot=da;var fa=()=>{let{duplicateRecord:e}=R();return useMutation({mutationFn:({id:t,model:r,context:o,service:s,xNode:n})=>e({id:t,model:r,context:o,service:s,xNode:n})})},rt=fa;var ga=({aid:e,context:t,enabled:r,id:o,model:s,queryKey:n})=>{let {getActionDetail:a}=_();return useQuery({queryKey:n,queryFn:async()=>{if(e){let m=await a(e,t);if(m&&m.length>0)return m[0]}},enabled:r,refetchOnWindowFocus:false,staleTime:1/0})},st=ga;var Ca=(e,t,r)=>{let{getListCalendar:o}=E();return useQuery({queryKey:t,queryFn:()=>o({data:e}).then(s=>s||[]),enabled:r,refetchOnWindowFocus:false,staleTime:0})},nt=Ca;var _a=({model:e,width_context:t})=>{let{getGroups:r}=z();return useQuery({queryKey:[e,t],queryFn:()=>r({model:e,width_context:t}).then(o=>o||[]),refetchOnWindowFocus:false})},at=_a;var va=(e,t,r,o,s,n)=>{let{getAll:a}=E();return useQuery({queryKey:t,queryFn:()=>a({data:e,service:o,xNode:s,searchParams:n}).then(u=>u||[]),enabled:r,refetchOnWindowFocus:false,staleTime:0})},it=va;var Ta=(e,t,r,o,s)=>{let{getMenu:n}=_();return useQuery({queryKey:["menus",e],queryFn:()=>n(e,t,o,s).then(a=>a&&a?.records&&a?.records?.length>0?a?.records:[]),refetchOnWindowFocus:false,staleTime:1/0,enabled:r})},ut=Ta;var Aa=()=>{let{getPrintReportName:e}=R();return useMutation({mutationFn:({id:t})=>e({id:t})})},pt=Aa;var Ea=({field:e,color:t,model:r,width_context:o})=>{let{getProgressBar:s}=z();return useQuery({queryKey:[],queryFn:()=>s({field:e,color:t,model:r,width_context:o}).then(n=>n||[]),refetchOnWindowFocus:false})},ct=Ea;var Da=({data:e,queryKey:t,enabled:r,service:o,xNode:s})=>{let{getSelectionItem:n}=_();return useQuery({queryKey:t,queryFn:()=>n({data:e,service:o,xNode:s}),enabled:r,refetchOnWindowFocus:false})},mt=Da;var La=({viewParams:e,enabled:t})=>{let{getView:r}=_();return useQuery({queryKey:["get_view_by_action",e?.model,e?.context,e?.aid,...e?.views??[]],queryFn:()=>r(e),enabled:!!t,refetchOnWindowFocus:false,staleTime:1/0})},dt=La;var Oa=()=>{let{loadAction:e}=R();return useMutation({mutationFn:({idAction:t,context:r,service:o,xNode:s,searchParams:n})=>e({idAction:t,context:r,service:o,xNode:s,searchParams:n})})},lt=Oa;var qa=()=>{let{loadMessages:e}=_();return useQuery({queryKey:["load-message-failure"],queryFn:()=>e(),refetchOnWindowFocus:false})},ft=qa;var Ua=()=>{let{print:e}=R();return useMutation({mutationFn:({id:t,report:r,db:o})=>e({id:t,report:r,db:o})})},yt=Ua;var ja=()=>{let{removeRows:e}=R();return useMutation({mutationFn:({model:t,ids:r,context:o,service:s,xNode:n})=>e({model:t,ids:r,context:o,service:s,xNode:n})})},gt=ja;var Ha=()=>{let{getResequence:e}=_();return useMutation({mutationFn:({model:t,resIds:r,context:o,offset:s,xNode:n,service:a})=>e({model:t,ids:r,context:o,offset:s,xNode:n,service:a})})},St=Ha;var Ba=()=>{let{runAction:e}=R();return useMutation({mutationFn:({idAction:t,context:r,service:o,xNode:s,searchParams:n})=>e({idAction:t,context:r,service:o,xNode:s,searchParams:n})})},Ct=Ba;var Wa=()=>{let{signInSSO:e}=_();return useMutation({mutationFn:({redirect_uri:t,state:r,client_id:o,response_type:s,path:n,scope:a})=>e({redirect_uri:t,state:r,client_id:o,response_type:s,path:n,scope:a})})},ht=Wa;var Ka=()=>{let{verify2FA:e}=_();return useMutation({mutationFn:({method:t,with_context:r,code:o,device:s,location:n})=>e({method:t,with_context:r,code:o,device:s,location:n})})},_t=Ka;var za=()=>{let{get2FAMethods:e}=_();return useMutation({mutationFn:({method:t,with_context:r})=>e({method:t,with_context:r})})},xt=za;var Ya=()=>{let{grantAccess:e}=_();return useMutation({mutationFn:({redirect_uri:t,state:r,client_id:o,scopes:s})=>e({redirect_uri:t,state:r,client_id:o,scopes:s})})},vt=Ya;var ei=()=>{let{removeTotpSetUp:e}=_();return useMutation({mutationFn:({method:t,token:r})=>e({method:t,token:r})})},bt=ei;var oi=()=>{let{requestSetupTotp:e}=_();return useMutation({mutationFn:({method:t,token:r})=>e({method:t,token:r})})},Tt=oi;var si=()=>{let{settingsWebRead2fa:e}=_();return useMutation({mutationFn:({method:t,token:r,kwargs:o,model:s})=>e({method:t,model:s,kwargs:o,token:r})})},Pt=si;var ai=()=>{let{verifyTotp:e}=_();return useMutation({mutationFn:({method:t,action_token:r,code:o})=>e({method:t,action_token:r,code:o})})},At=ai;var ui=()=>{let{generateSerialNumber:e}=R();return useMutation({mutationFn:({kwargs:t,context:r,service:o,xNode:s})=>e({kwargs:t,context:r,service:o,xNode:s})})},Gt=ui;var ci=({service:e,xNode:t,body:r,queryKey:o=[],enabled:s})=>{let{getNotifications:n}=_();return useQuery({queryKey:o,queryFn:()=>n({body:r,service:e,xNode:t}).then(a=>a),enabled:s,refetchOnWindowFocus:false})},Et=ci;var di=()=>{let{getVersion:e}=_();return useMutation({mutationFn:()=>e()})},wt=di;var fi=()=>{let{getWard:e}=_();return useMutation({mutationFn:({service:t,xNode:r,kwargs:o})=>e({service:t,xNode:r,kwargs:o})})},Dt=fi;var gi=()=>{let{getCity:e}=_();return useMutation({mutationFn:({service:t,xNode:r,ids:o,kwargs:s})=>e({service:t,xNode:r,ids:o,kwargs:s})})},Ft=gi;var Ci=()=>{let{getCountry:e}=_();return useMutation({mutationFn:({service:t,xNode:r,ids:o,kwargs:s})=>e({service:t,xNode:r,ids:o,kwargs:s})})},Lt=Ci;var _i=()=>{let{getPartnerTitle:e}=_();return useMutation({mutationFn:({service:t,xNode:r,kwargs:o,withContext:s})=>e({service:t,xNode:r,kwargs:o,withContext:s})})},Mt=_i;var vi=(e,t,r,o)=>{let{readGroup:s}=J();return useQuery({queryKey:[r],queryFn:()=>s({service:e,xNode:t,body:r}),refetchOnWindowFocus:false,enabled:o})},Ot=vi;var Ti=(e,t,r,o,s,n,a)=>{let{getDataChart:u}=J();return useQuery({queryKey:[a],queryFn:()=>u({service:e,xNode:t,body:r,path:s,method:n}),refetchOnWindowFocus:false,enabled:o})},Rt=Ti;var Ai=()=>{let{addEntity:e}=f();return useMutation({mutationFn:e})},qt=Ai;var Ei=()=>{let e=f();return useMutation({mutationFn:e.getASession})},Nt=Ei;var Di=()=>{let e=f();return useMutation({mutationFn:e.changeOrderPreparationState})},Ut=Di;var Li=()=>{let e=f();return useMutation({mutationFn:e.checkPayment})},kt=Li;var Oi=()=>{let e=f();return useMutation({mutationFn:e.createEInvoice})},jt=Oi;var qi=()=>{let e=f();return useMutation({mutationFn:e.createEntity})},It=qi;var Ui=()=>{let e=f();return useMutation({mutationFn:e.createPosConfig})},Ht=Ui;var ji=()=>{let e=f();return useMutation({mutationFn:e.createSession})},Vt=ji;var Hi=()=>{let e=f();return useMutation({mutationFn:e.deleteEntity})},Bt=Hi;var Bi=()=>{let e=f();return useMutation({mutationFn:e.generatePaymentQRInfo})},Xt=Bi;var Wi=()=>{let e=f();return useMutation({mutationFn:e.getCurrentUser})},Wt=Wi;var Ki=()=>{let e=f();return useMutation({mutationFn:e.getList})},Qt=Ki;var zi=()=>{let e=f();return useMutation({mutationFn:e.getOrderLine})},Kt=zi;var Yi=()=>{let e=f();return useMutation({mutationFn:e.getPinCode})},$t=Yi;var eu=()=>{let e=f();return useMutation({mutationFn:e.getPOS})},zt=eu;var ou=()=>{let e=f();return useMutation({mutationFn:e.getPreparationDisplayData})},Jt=ou;var su=()=>{let e=f();return useMutation({mutationFn:e.getProductImage})},Yt=su;var au=()=>{let e=f();return useMutation({mutationFn:e.handleCloseSession})},Zt=au;var uu=()=>{let e=f();return useMutation({mutationFn:e.handleClosingDetailSession})},eo=uu;var cu=()=>{let e=f();return useMutation({mutationFn:e.handleClosingSession})},to=cu;var du=()=>{let e=f(),{env:t}=G();return useMutation({mutationFn:t.isSupaMode?e.loadDataPosSessionSupabase:e.loadDataPosSession})},oo=du;var fu=()=>{let e=f();return useMutation({mutationFn:e.manageOnChange})},ro=fu;var gu=()=>{let e=f();return useMutation({mutationFn:e.manageSession})},so=gu;var Cu=()=>{let e=f();return useMutation({mutationFn:e.processOrder})},no=Cu;var _u=()=>{let e=f();return useMutation({mutationFn:e.savePinCode})},ao=_u;var vu=()=>{let e=f();return useMutation({mutationFn:e.searchJournal})},io=vu;var Tu=()=>{let e=f();return useMutation({mutationFn:e.updateClosedSession})},uo=Tu;var Au=()=>{let e=f();return useMutation({mutationFn:e.updateEntity})},po=Au;var Eu=()=>{let e=f();return useMutation({mutationFn:e.updateOrderStatus})},co=Eu;var Du=()=>{let e=f();return useMutation({mutationFn:e.completeCurrentStage})},mo=Du;var To=()=>{let e=L();return {createOrderSupabase:useCallback(async r=>{if(!e)return console.error("Supabase client not initialized"),null;try{let{data:o,error:s}=await e.from("orders").insert({name:r.pos_reference,date_order:new Date().toISOString(),session_id:r.session_id,pos_reference:r.pos_reference,amount_tax:r.amount_tax,amount_total:r.amount_total,amount_paid:r.amount_paid,amount_return:r.amount_return,table_id:r.table_id,partner_id:r.partner_id}).select("id, pos_reference").single();return s?(console.error("Error creating order:",s),null):[[o.id,o.pos_reference]]}catch(o){return console.error("Error creating order:",o),null}},[e])}};var Mu=()=>{let{addFloorSupabase:e}=Z();return useMutation({mutationFn:e})},lo=Mu;var Ru=()=>{let{addTableSupabase:e}=ee();return useMutation({mutationFn:e})},fo=Ru;var Nu=()=>{let{updateFloorSupabase:e}=te();return useMutation({mutationFn:e})},yo=Nu;var ku=()=>{let{updateTableSupabase:e}=oe();return useMutation({mutationFn:e})},go=ku;var Iu=()=>{let{deleteFloorSupabase:e}=re();return useMutation({mutationFn:e})},So=Iu;var Vu=()=>{let{deleteTableSupabase:e}=se();return useMutation({mutationFn:e})},Co=Vu;var Xu=()=>{let{createOrderSupabase:e}=To();return useMutation({mutationFn:e})},ho=Xu;var hr=createContext(null),_r=({children:e})=>{let t={useForgotPassword:ie,useForgotPasswordSSO:ue,useGetProvider:pe,useIsValidToken:ce,useLoginCredential:me,useLoginSocial:de,useResetPassword:fe,useResetPasswordSSO:ye,useUpdatePassword:ge,useLogout:Se,useGetAccessByCode:Ce,useValidateActionToken:he,useGetCompanyInfo:ve,useGetCurrentCompany:be,useGetListCompany:Te,useExecuteImport:Fe,useExportExcel:Pe,useGetFieldExport:Ae,useGetFileExcel:Ge,useParsePreview:Ee,useUploadFileExcel:we,useUploadIdFile:De,useChangeStatus:Le,useDeleteComment:Me,useGetComment:Oe,useGetFormView:Re,useSendComment:qe,useUploadImage:Ne,useDelete:He,useGetAll:Ve,useGetConversionRate:Be,useGetCurrency:Xe,useGetDetail:We,useGetFieldOnChange:Qe,useGetListMyBankAccount:Ke,useModel:$e,useOdooDataTransform:ze,useOnChangeForm:Je,useSave:Ye,useGetProfile:Ze,useGetUser:et,useSwitchLocale:tt,useButton:ot,useDuplicateRecord:rt,useGet2FAMethods:xt,useGetActionDetail:st,useGetCalendar:nt,useGetGroups:at,useGetListData:it,useGetMenu:ut,useGetPrintReport:pt,useGetProGressBar:ct,useGetResequence:St,useGetSelection:mt,useGetView:dt,useLoadAction:lt,useLoadMessage:ft,usePrint:yt,useRemoveRow:gt,useRunAction:Ct,useSignInSSO:ht,useVerify2FA:_t,useGrantAccess:vt,useRemoveTotpSetup:bt,useRequestSetupTotp:Tt,useSettingsWebRead2fa:Pt,useVerifyTotp:At,useUploadFile:Ue,useCreateEntity:It,useGetASession:Nt,useCreateSession:Vt,useDeleteEntity:Bt,useGetList:Qt,useGetPos:zt,useHandleClosingSession:to,useManageSession:so,useUpdateClosedSession:uo,useUpdateEntity:po,useLoadDataPosSession:oo,useManageOnChange:ro,useGenSerialNumber:Gt,useGetOrderLine:Kt,useGetProductImage:Yt,useAddEntity:qt,useCheckPayment:kt,useHandleCloseSession:Zt,useHandleClosingDetailSession:eo,useCreatePosConfig:Ht,useSearchJournal:io,useGetTenantMapping:_e,useGetToken:xe,useGetPreparationDisplayData:Jt,useChangeOrderPreparationState:Ut,useUpdateOrderStatus:co,useGetThreadData:ke,useGetThreadMessages:je,useGetExternalTabs:Ie,useProcessOrder:no,useGeneratePaymentQrInfo:Xt,useSavePinCode:ao,useGetPinCode:$t,useReadGroup:Ot,useGetNotifications:Et,useGetDataChart:Rt,useGetVersion:wt,useCreateEInvoice:jt,useGetCurrentUser:Wt,useGetCity:Ft,useGetWard:Dt,useGetCountry:Lt,useGetPartnerTitle:Mt,useCompleteCurrentStage:mo,useLoginSupa:le,useAddFloor:lo,useAddTable:fo,useDeleteFloor:So,useDeleteTable:Co,useUpdateFloor:yo,useUpdateTable:go,useCreateOrder:ho};return jsx(hr.Provider,{value:t,children:e})},xr=()=>{let e=useContext(hr);if(!e)throw new Error("useService must be used within a ServiceProvider");return e};var vr=({children:e})=>{let{env:t}=G();function r(){let o=t?.defaultCompany;if(!o)return;o.display_name&&(document.title=o.display_name),document.documentElement.style.setProperty("--primary",o?.primary_color),document.documentElement.style.setProperty("--secondary",o?.secondary_color);let s=document.querySelector('meta[name="description"]');if(s)s.setAttribute("content",o.display_name);else {let a=document.createElement("meta");a.name="description",a.content=o.display_name,document.head.appendChild(a);}let n=(a,u)=>{let m=document.querySelector(`link[rel="${a}"]`);m?m.href=u:(m=document.createElement("link"),m.rel=a,m.href=u,document.head.appendChild(m));};if(o.logo){n("icon",o.logo),n("apple-touch-icon",o.logo);let a=document.querySelector('link[href="favicon.ico"]');a&&a.remove();}}return useEffect(()=>{r();},[t?.defaultCompany]),jsx(Fragment,{children:e})};export{je as $,jt as $a,le as A,lt as Aa,fo as Ab,fe as B,ft as Ba,yo as Bb,ye as C,yt as Ca,go as Cb,ge as D,gt as Da,So as Db,Se as E,St as Ea,Co as Eb,Ce as F,Ct as Fa,ho as Fb,he as G,ht as Ga,_e as H,_t as Ha,xe as I,xt as Ia,ve as J,vt as Ja,be as K,bt as Ka,Te as L,Tt as La,Pe as M,Pt as Ma,Ae as N,At as Na,Ge as O,Gt as Oa,Ee as P,Et as Pa,we as Q,wt as Qa,De as R,Dt as Ra,Fe as S,Ft as Sa,Le as T,Lt as Ta,Me as U,Mt as Ua,Oe as V,Ot as Va,Re as W,Rt as Wa,qe as X,qt as Xa,Ne as Y,Nt as Ya,Ue as Z,Ut as Za,ke as _,kt as _a,ae as a,Ie as aa,It as ab,Lo as b,He as ba,Ht as bb,Oo as c,Ve as ca,Vt as cb,G as d,Be as da,Bt as db,_r as e,Xe as ea,Xt as eb,xr as f,We as fa,Wt as fb,vr as g,Qe as ga,Qt as gb,qo as h,Ke as ha,Kt as hb,No as i,$e as ia,$t as ib,R as j,ze as ja,zt as jb,A as k,Je as ka,Jt as kb,$ as l,Ye as la,Yt as lb,N as m,Ze as ma,Zt as mb,F as n,et as na,eo as nb,z as o,tt as oa,to as ob,E as p,ot as pa,oo as pb,W as q,rt as qa,ro as qb,_ as r,st as ra,so as rb,J as s,nt as sa,no as sb,f as t,at as ta,ao as tb,ie as u,it as ua,io as ub,ue as v,ut as va,uo as vb,pe as w,pt as wa,po as wb,ce as x,ct as xa,co as xb,me as y,mt as ya,mo as yb,de as z,dt as za,lo as zb};
|
package/dist/hooks.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{
|
|
1
|
+
export{Xa as useAddEntity,zb as useAddFloor,Ab as useAddTable,pa as useButton,Za as useChangeOrderPreparationState,T as useChangeStatus,_a as useCheckPayment,yb as useCompleteCurrentStage,$a as useCreateEInvoice,ab as useCreateEntity,Fb as useCreateOrder,bb as useCreatePosConfig,cb as useCreateSession,ba as useDelete,U as useDeleteComment,db as useDeleteEntity,Db as useDeleteFloor,Eb as useDeleteTable,qa as useDuplicateRecord,S as useExecuteImport,M as useExportExcel,u as useForgotPassword,v as useForgotPasswordSSO,Oa as useGenSerialNumber,eb as useGeneratePaymentQrInfo,Ia as useGet2FAMethods,Ya as useGetASession,F as useGetAccessByCode,ra as useGetActionDetail,ca as useGetAll,sa as useGetCalendar,Sa as useGetCity,V as useGetComment,J as useGetCompanyInfo,da as useGetConversionRate,Ta as useGetCountry,ea as useGetCurrency,K as useGetCurrentCompany,fb as useGetCurrentUser,Wa as useGetDataChart,fa as useGetDetail,aa as useGetExternalTabs,N as useGetFieldExport,ga as useGetFieldOnChange,O as useGetFileExcel,W as useGetFormView,ta as useGetGroups,gb as useGetList,L as useGetListCompany,ua as useGetListData,ha as useGetListMyBankAccount,va as useGetMenu,Pa as useGetNotifications,hb as useGetOrderLine,Ua as useGetPartnerTitle,ib as useGetPinCode,jb as useGetPos,kb as useGetPreparationDisplayData,wa as useGetPrintReport,xa as useGetProGressBar,lb as useGetProductImage,ma as useGetProfile,w as useGetProvider,Ea as useGetResequence,ya as useGetSelection,H as useGetTenantMapping,_ as useGetThreadData,$ as useGetThreadMessages,I as useGetToken,na as useGetUser,Qa as useGetVersion,za as useGetView,Ra as useGetWard,Ja as useGrantAccess,mb as useHandleCloseSession,nb as useHandleClosingDetailSession,ob as useHandleClosingSession,x as useIsValidToken,Aa as useLoadAction,pb as useLoadDataPosSession,Ba as useLoadMessage,y as useLoginCredential,z as useLoginSocial,A as useLoginSupa,E as useLogout,qb as useManageOnChange,rb as useManageSession,ia as useModel,ja as useOdooDataTransform,ka as useOnChangeForm,P as useParsePreview,Ca as usePrint,sb as useProcessOrder,Va as useReadGroup,Da as useRemoveRow,Ka as useRemoveTotpSetup,La as useRequestSetupTotp,B as useResetPassword,C as useResetPasswordSSO,Fa as useRunAction,la as useSave,tb as useSavePinCode,ub as useSearchJournal,X as useSendComment,Ma as useSettingsWebRead2fa,Ga as useSignInSSO,oa as useSwitchLocale,vb as useUpdateClosedSession,wb as useUpdateEntity,Bb as useUpdateFloor,xb as useUpdateOrderStatus,D as useUpdatePassword,Cb as useUpdateTable,Z as useUploadFile,Q as useUploadFileExcel,R as useUploadIdFile,Y as useUploadImage,G as useValidateActionToken,Ha as useVerify2FA,Na as useVerifyTotp}from'./chunk-WEWWFI7Y.mjs';import'./chunk-LYD7QJQX.mjs';import'./chunk-Y65DQP66.mjs';import'./chunk-LCUY2BJU.mjs';import'./chunk-KPELPP6F.mjs';import'./chunk-CI6PEZ77.mjs';
|
package/dist/provider.d.mts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import React$1, { ReactNode } from 'react';
|
|
3
3
|
import { L as LocalStorageUtilsType } from './local-storage-AbiOQTLK.mjs';
|
|
4
|
-
import { useForgotPassword, useForgotPasswordSSO, useGetProvider, useIsValidToken, useLoginCredential, useLoginSocial,
|
|
4
|
+
import { useForgotPassword, useForgotPasswordSSO, useGetProvider, useIsValidToken, useLoginCredential, useLoginSocial, useResetPassword, useResetPasswordSSO, useUpdatePassword, useLogout, useGetAccessByCode, useValidateActionToken, useGetCompanyInfo, useGetCurrentCompany, useGetListCompany, useExecuteImport, useExportExcel, useGetFieldExport, useGetFileExcel, useParsePreview, useUploadFileExcel, useUploadIdFile, useChangeStatus, useDeleteComment, useGetComment, useGetFormView, useSendComment, useUploadImage, useDelete, useGetAll, useGetConversionRate, useGetCurrency, useGetDetail, useGetFieldOnChange, useGetListMyBankAccount, useModel, useOdooDataTransform, useOnChangeForm, useSave, useGetProfile, useGetUser, useSwitchLocale, useButton, useDuplicateRecord, useGet2FAMethods, useGetActionDetail, useGetCalendar, useGetGroups, useGetListData, useGetMenu, useGetPrintReport, useGetProGressBar, useGetResequence, useGetSelection, useGetView, useLoadAction, useLoadMessage, usePrint, useRemoveRow, useRunAction, useSignInSSO, useVerify2FA, useGrantAccess, useRemoveTotpSetup, useRequestSetupTotp, useSettingsWebRead2fa, useVerifyTotp, useUploadFile, useCreateEntity, useGetASession, useCreateSession, useDeleteEntity, useGetList, useGetPos, useHandleClosingSession, useManageSession, useUpdateClosedSession, useUpdateEntity, useLoadDataPosSession, useManageOnChange, useGenSerialNumber, useGetOrderLine, useGetProductImage, useAddEntity, useCheckPayment, useHandleCloseSession, useHandleClosingDetailSession, useCreatePosConfig, useSearchJournal, useGetTenantMapping, useGetToken, useGetPreparationDisplayData, useUpdateOrderStatus, useGetThreadData, useGetThreadMessages, useGetExternalTabs, useProcessOrder, useGeneratePaymentQrInfo, useSavePinCode, useGetPinCode, useReadGroup, useGetNotifications, useGetDataChart, useGetVersion, useCreateEInvoice, useGetCurrentUser, useGetWard, useGetCity, useGetCountry, useGetPartnerTitle, useChangeOrderPreparationState, useCompleteCurrentStage, useLoginSupa, useAddFloor, useAddTable, useDeleteFloor, useDeleteTable, useUpdateFloor, useUpdateTable, useCreateOrder } from './hooks.mjs';
|
|
5
5
|
import { SupabaseClient } from '@supabase/supabase-js';
|
|
6
6
|
import '@tanstack/react-query';
|
|
7
7
|
import './view-type-CfcWWR0w.mjs';
|
|
@@ -65,39 +65,22 @@ declare function useEnv(): {
|
|
|
65
65
|
setEnvFile: (envFile: any) => void;
|
|
66
66
|
};
|
|
67
67
|
|
|
68
|
-
interface
|
|
68
|
+
interface ServiceContextType {
|
|
69
69
|
useForgotPassword: typeof useForgotPassword;
|
|
70
70
|
useForgotPasswordSSO: typeof useForgotPasswordSSO;
|
|
71
71
|
useGetProvider: typeof useGetProvider;
|
|
72
72
|
useIsValidToken: typeof useIsValidToken;
|
|
73
73
|
useLoginCredential: typeof useLoginCredential;
|
|
74
74
|
useLoginSocial: typeof useLoginSocial;
|
|
75
|
-
useLoginSupa: typeof useLoginSupa;
|
|
76
75
|
useResetPassword: typeof useResetPassword;
|
|
77
76
|
useResetPasswordSSO: typeof useResetPasswordSSO;
|
|
78
77
|
useUpdatePassword: typeof useUpdatePassword;
|
|
79
78
|
useLogout: typeof useLogout;
|
|
80
79
|
useGetAccessByCode: typeof useGetAccessByCode;
|
|
81
80
|
useValidateActionToken: typeof useValidateActionToken;
|
|
82
|
-
useGetTenantMapping: typeof useGetTenantMapping;
|
|
83
|
-
useGetToken: typeof useGetToken;
|
|
84
|
-
}
|
|
85
|
-
declare const AuthServiceProvider: ({ children }: {
|
|
86
|
-
children: ReactNode;
|
|
87
|
-
}) => react_jsx_runtime.JSX.Element;
|
|
88
|
-
declare const useAuthService: () => AuthServiceContextType;
|
|
89
|
-
|
|
90
|
-
interface CompanyServiceContextType {
|
|
91
81
|
useGetCompanyInfo: typeof useGetCompanyInfo;
|
|
92
82
|
useGetCurrentCompany: typeof useGetCurrentCompany;
|
|
93
83
|
useGetListCompany: typeof useGetListCompany;
|
|
94
|
-
}
|
|
95
|
-
declare const CompanyServiceProvider: ({ children, }: {
|
|
96
|
-
children: ReactNode;
|
|
97
|
-
}) => react_jsx_runtime.JSX.Element;
|
|
98
|
-
declare const useCompanyService: () => CompanyServiceContextType;
|
|
99
|
-
|
|
100
|
-
interface ExcelServiceContextType {
|
|
101
84
|
useExecuteImport: typeof useExecuteImport;
|
|
102
85
|
useExportExcel: typeof useExportExcel;
|
|
103
86
|
useGetFieldExport: typeof useGetFieldExport;
|
|
@@ -105,30 +88,12 @@ interface ExcelServiceContextType {
|
|
|
105
88
|
useParsePreview: typeof useParsePreview;
|
|
106
89
|
useUploadFileExcel: typeof useUploadFileExcel;
|
|
107
90
|
useUploadIdFile: typeof useUploadIdFile;
|
|
108
|
-
}
|
|
109
|
-
declare const ExcelServiceProvider: ({ children }: {
|
|
110
|
-
children: ReactNode;
|
|
111
|
-
}) => react_jsx_runtime.JSX.Element;
|
|
112
|
-
declare const useExcelService: () => ExcelServiceContextType;
|
|
113
|
-
|
|
114
|
-
interface FormServiceContextType {
|
|
115
91
|
useChangeStatus: typeof useChangeStatus;
|
|
116
92
|
useDeleteComment: typeof useDeleteComment;
|
|
117
93
|
useGetComment: typeof useGetComment;
|
|
118
|
-
useGetExternalTabs: typeof useGetExternalTabs;
|
|
119
94
|
useGetFormView: typeof useGetFormView;
|
|
120
|
-
useGetThreadData: typeof useGetThreadData;
|
|
121
|
-
useGetThreadMessages: typeof useGetThreadMessages;
|
|
122
95
|
useSendComment: typeof useSendComment;
|
|
123
|
-
useUploadFile: typeof useUploadFile;
|
|
124
96
|
useUploadImage: typeof useUploadImage;
|
|
125
|
-
}
|
|
126
|
-
declare const FormServiceProvider: ({ children }: {
|
|
127
|
-
children: ReactNode;
|
|
128
|
-
}) => react_jsx_runtime.JSX.Element;
|
|
129
|
-
declare const useFormService: () => FormServiceContextType;
|
|
130
|
-
|
|
131
|
-
interface ModelServiceContextType {
|
|
132
97
|
useDelete: typeof useDelete;
|
|
133
98
|
useGetAll: typeof useGetAll;
|
|
134
99
|
useGetConversionRate: typeof useGetConversionRate;
|
|
@@ -140,23 +105,9 @@ interface ModelServiceContextType {
|
|
|
140
105
|
useOdooDataTransform: typeof useOdooDataTransform;
|
|
141
106
|
useOnChangeForm: typeof useOnChangeForm;
|
|
142
107
|
useSave: typeof useSave;
|
|
143
|
-
}
|
|
144
|
-
declare const ModelServiceProvider: ({ children }: {
|
|
145
|
-
children: ReactNode;
|
|
146
|
-
}) => react_jsx_runtime.JSX.Element;
|
|
147
|
-
declare const useModelService: () => ModelServiceContextType;
|
|
148
|
-
|
|
149
|
-
interface UserServiceContextType {
|
|
150
108
|
useGetProfile: typeof useGetProfile;
|
|
151
109
|
useGetUser: typeof useGetUser;
|
|
152
110
|
useSwitchLocale: typeof useSwitchLocale;
|
|
153
|
-
}
|
|
154
|
-
declare const UserServiceProvider: ({ children }: {
|
|
155
|
-
children: ReactNode;
|
|
156
|
-
}) => react_jsx_runtime.JSX.Element;
|
|
157
|
-
declare const useUserService: () => UserServiceContextType;
|
|
158
|
-
|
|
159
|
-
interface ViewServiceContextType {
|
|
160
111
|
useButton: typeof useButton;
|
|
161
112
|
useDuplicateRecord: typeof useDuplicateRecord;
|
|
162
113
|
useGet2FAMethods: typeof useGet2FAMethods;
|
|
@@ -182,71 +133,64 @@ interface ViewServiceContextType {
|
|
|
182
133
|
useRequestSetupTotp: typeof useRequestSetupTotp;
|
|
183
134
|
useSettingsWebRead2fa: typeof useSettingsWebRead2fa;
|
|
184
135
|
useVerifyTotp: typeof useVerifyTotp;
|
|
136
|
+
useUploadFile: typeof useUploadFile;
|
|
137
|
+
useCreateEntity: typeof useCreateEntity;
|
|
138
|
+
useGetASession: typeof useGetASession;
|
|
139
|
+
useCreateSession: typeof useCreateSession;
|
|
140
|
+
useDeleteEntity: typeof useDeleteEntity;
|
|
141
|
+
useGetList: typeof useGetList;
|
|
142
|
+
useGetPos: typeof useGetPos;
|
|
143
|
+
useHandleClosingSession: typeof useHandleClosingSession;
|
|
144
|
+
useManageSession: typeof useManageSession;
|
|
145
|
+
useUpdateClosedSession: typeof useUpdateClosedSession;
|
|
146
|
+
useUpdateEntity: typeof useUpdateEntity;
|
|
147
|
+
useLoadDataPosSession: typeof useLoadDataPosSession;
|
|
148
|
+
useManageOnChange: typeof useManageOnChange;
|
|
185
149
|
useGenSerialNumber: typeof useGenSerialNumber;
|
|
150
|
+
useGetOrderLine: typeof useGetOrderLine;
|
|
151
|
+
useGetProductImage: typeof useGetProductImage;
|
|
152
|
+
useAddEntity: typeof useAddEntity;
|
|
153
|
+
useCheckPayment: typeof useCheckPayment;
|
|
154
|
+
useHandleCloseSession: typeof useHandleCloseSession;
|
|
155
|
+
useHandleClosingDetailSession: typeof useHandleClosingDetailSession;
|
|
156
|
+
useCreatePosConfig: typeof useCreatePosConfig;
|
|
157
|
+
useSearchJournal: typeof useSearchJournal;
|
|
158
|
+
useGetTenantMapping: typeof useGetTenantMapping;
|
|
159
|
+
useGetToken: typeof useGetToken;
|
|
160
|
+
useGetPreparationDisplayData: typeof useGetPreparationDisplayData;
|
|
161
|
+
useUpdateOrderStatus: typeof useUpdateOrderStatus;
|
|
162
|
+
useGetThreadData: typeof useGetThreadData;
|
|
163
|
+
useGetThreadMessages: typeof useGetThreadMessages;
|
|
164
|
+
useGetExternalTabs: typeof useGetExternalTabs;
|
|
165
|
+
useProcessOrder: typeof useProcessOrder;
|
|
166
|
+
useGeneratePaymentQrInfo: typeof useGeneratePaymentQrInfo;
|
|
167
|
+
useSavePinCode: typeof useSavePinCode;
|
|
168
|
+
useGetPinCode: typeof useGetPinCode;
|
|
169
|
+
useReadGroup: typeof useReadGroup;
|
|
186
170
|
useGetNotifications: typeof useGetNotifications;
|
|
171
|
+
useGetDataChart: typeof useGetDataChart;
|
|
187
172
|
useGetVersion: typeof useGetVersion;
|
|
173
|
+
useCreateEInvoice: typeof useCreateEInvoice;
|
|
174
|
+
useGetCurrentUser: typeof useGetCurrentUser;
|
|
188
175
|
useGetWard: typeof useGetWard;
|
|
189
176
|
useGetCity: typeof useGetCity;
|
|
190
177
|
useGetCountry: typeof useGetCountry;
|
|
191
178
|
useGetPartnerTitle: typeof useGetPartnerTitle;
|
|
192
|
-
}
|
|
193
|
-
declare const ViewServiceProvider: ({ children }: {
|
|
194
|
-
children: ReactNode;
|
|
195
|
-
}) => react_jsx_runtime.JSX.Element;
|
|
196
|
-
declare const useViewService: () => ViewServiceContextType;
|
|
197
|
-
|
|
198
|
-
interface ChartServiceContextType {
|
|
199
|
-
useGetDataChart: typeof useGetDataChart;
|
|
200
|
-
useReadGroup: typeof useReadGroup;
|
|
201
|
-
}
|
|
202
|
-
declare const ChartServiceProvider: ({ children }: {
|
|
203
|
-
children: ReactNode;
|
|
204
|
-
}) => react_jsx_runtime.JSX.Element;
|
|
205
|
-
declare const useChartService: () => ChartServiceContextType;
|
|
206
|
-
|
|
207
|
-
interface PosServiceContextType {
|
|
208
|
-
useAddEntity: typeof useAddEntity;
|
|
209
|
-
useAddFloor: typeof useAddFloor;
|
|
210
|
-
useAddTable: typeof useAddTable;
|
|
211
179
|
useChangeOrderPreparationState: typeof useChangeOrderPreparationState;
|
|
212
|
-
useCheckPayment: typeof useCheckPayment;
|
|
213
180
|
useCompleteCurrentStage: typeof useCompleteCurrentStage;
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
useCreatePosConfig: typeof useCreatePosConfig;
|
|
218
|
-
useCreateSession: typeof useCreateSession;
|
|
219
|
-
useDeleteEntity: typeof useDeleteEntity;
|
|
181
|
+
useLoginSupa: typeof useLoginSupa;
|
|
182
|
+
useAddFloor: typeof useAddFloor;
|
|
183
|
+
useAddTable: typeof useAddTable;
|
|
220
184
|
useDeleteFloor: typeof useDeleteFloor;
|
|
221
185
|
useDeleteTable: typeof useDeleteTable;
|
|
222
|
-
useGeneratePaymentQrInfo: typeof useGeneratePaymentQrInfo;
|
|
223
|
-
useGetASession: typeof useGetASession;
|
|
224
|
-
useGetCurrentUser: typeof useGetCurrentUser;
|
|
225
|
-
useGetList: typeof useGetList;
|
|
226
|
-
useGetOrderLine: typeof useGetOrderLine;
|
|
227
|
-
useGetPinCode: typeof useGetPinCode;
|
|
228
|
-
useGetPos: typeof useGetPos;
|
|
229
|
-
useGetPreparationDisplayData: typeof useGetPreparationDisplayData;
|
|
230
|
-
useGetProductImage: typeof useGetProductImage;
|
|
231
|
-
useHandleCloseSession: typeof useHandleCloseSession;
|
|
232
|
-
useHandleClosingDetailSession: typeof useHandleClosingDetailSession;
|
|
233
|
-
useHandleClosingSession: typeof useHandleClosingSession;
|
|
234
|
-
useLoadDataPosSession: typeof useLoadDataPosSession;
|
|
235
|
-
useManageOnChange: typeof useManageOnChange;
|
|
236
|
-
useManageSession: typeof useManageSession;
|
|
237
|
-
useProcessOrder: typeof useProcessOrder;
|
|
238
|
-
useSavePinCode: typeof useSavePinCode;
|
|
239
|
-
useSearchJournal: typeof useSearchJournal;
|
|
240
|
-
useUpdateClosedSession: typeof useUpdateClosedSession;
|
|
241
|
-
useUpdateEntity: typeof useUpdateEntity;
|
|
242
186
|
useUpdateFloor: typeof useUpdateFloor;
|
|
243
|
-
useUpdateOrderStatus: typeof useUpdateOrderStatus;
|
|
244
187
|
useUpdateTable: typeof useUpdateTable;
|
|
188
|
+
useCreateOrder: typeof useCreateOrder;
|
|
245
189
|
}
|
|
246
|
-
declare const
|
|
247
|
-
children: ReactNode;
|
|
190
|
+
declare const ServiceProvider: ({ children, }: {
|
|
191
|
+
children: React.ReactNode;
|
|
248
192
|
}) => react_jsx_runtime.JSX.Element;
|
|
249
|
-
declare const
|
|
193
|
+
declare const useService: () => ServiceContextType;
|
|
250
194
|
|
|
251
195
|
type MetaProviderProps = {
|
|
252
196
|
children: ReactNode;
|
|
@@ -262,4 +206,4 @@ type SupabaseProviderProps = {
|
|
|
262
206
|
declare const SupabaseProvider: ({ supabaseUrl, supabaseKey, schema, children, }: SupabaseProviderProps) => react_jsx_runtime.JSX.Element;
|
|
263
207
|
declare const useSupabase: () => SupabaseClient<any, any, any, any, any>;
|
|
264
208
|
|
|
265
|
-
export {
|
|
209
|
+
export { EnvProvider, MainProvider, MetaProvider, ReactQueryProvider, ServiceProvider, SupabaseProvider, useEnv, useService, useSupabase };
|
package/dist/provider.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{
|
|
1
|
+
export{c as EnvProvider,b as MainProvider,g as MetaProvider,a as ReactQueryProvider,e as ServiceProvider,h as SupabaseProvider,d as useEnv,f as useService,i as useSupabase}from'./chunk-WEWWFI7Y.mjs';import'./chunk-LYD7QJQX.mjs';import'./chunk-Y65DQP66.mjs';import'./chunk-LCUY2BJU.mjs';import'./chunk-KPELPP6F.mjs';import'./chunk-CI6PEZ77.mjs';
|
package/dist/services.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{
|
|
1
|
+
export{j as useActionService,k as useAuthService,l as useCompanyService,s as useDashboardService,m as useExcelService,n as useFormService,o as useKanbanService,p as useModelService,t as usePosService,q as useUserService,r as useViewService}from'./chunk-WEWWFI7Y.mjs';import'./chunk-LYD7QJQX.mjs';import'./chunk-Y65DQP66.mjs';import'./chunk-LCUY2BJU.mjs';import'./chunk-KPELPP6F.mjs';import'./chunk-CI6PEZ77.mjs';
|
package/package.json
CHANGED
package/dist/chunk-Y5QM3Y5X.mjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import {a as a$1}from'./chunk-LYD7QJQX.mjs';import {b,a,n,o}from'./chunk-Y65DQP66.mjs';import {a as a$2}from'./chunk-LCUY2BJU.mjs';import {d,f as f$1}from'./chunk-KPELPP6F.mjs';import {c}from'./chunk-CI6PEZ77.mjs';import {createContext,useCallback,useState,useContext,useMemo,useEffect}from'react';import {QueryClient,QueryClientProvider,useMutation,useQuery}from'@tanstack/react-query';import {jsx,Fragment}from'react/jsx-runtime';import {createClient}from'@supabase/supabase-js';var ie=({children:e})=>{let[t]=useState(()=>new QueryClient({defaultOptions:{queries:{refetchOnWindowFocus:false,refetchOnMount:false,refetchOnReconnect:false,retry:false}}}));return jsx(QueryClientProvider,{client:t,children:e})};var Lo=({children:e})=>jsx(ie,{children:e});var rn={env:null,baseUrl:"",requests:null,companies:[],user:{},config:null,envFile:null,defaultCompany:{id:null,logo:"",secondary_color:"",primary_color:"",secondary_logo:""},context:{uid:null,lang:"vi_VN",tz:"Asia/Saigon"},excludeLanguages:[],isSupaMode:false},Mo=createContext(null);function Ro({children:e,localStorageUtils:t=a(),sessionStorageUtils:r=b}){let[o,n]=useState({...rn,localStorageUtils:t,sessionStorageUtils:r}),s=useCallback(a=>{let c={...o,...a,localStorageUtils:t,sessionStorageUtils:r},P=a$1.init(c);return n({...c,requests:P}),c},[o,t,r]),i=useCallback(a=>{n(c=>({...c,context:{...c.context,uid:a}}));},[]),u=useCallback(a=>{n(c=>({...c,context:{...c.context,lang:a}}));},[]),m=useCallback(a=>{n(c=>({...c,context:{...c.context,allowed_company_ids:a}}));},[]),l=useCallback(a=>{n(c=>({...c,companies:a}));},[]),C=useCallback(a=>{n(c=>({...c,defaultCompany:a}));},[]),_=useCallback(a=>{n(c=>({...c,user:a}));},[]),p=useCallback(a=>{n(c=>({...c,config:a}));},[]),y=useCallback(a=>{n(c=>({...c,envFile:a}));},[]);return jsx(Mo.Provider,{value:{env:o,setupEnv:s,setUid:i,setLang:u,setAllowCompanies:m,setCompanies:l,setDefaultCompany:C,setUserInfo:_,setConfig:p,setEnvFile:y},children:e})}function w(){let e=useContext(Mo);if(!e)throw new Error("useEnv must be used within an EnvProvider");return e}function O(){let{env:e}=w(),t=useCallback(async({idAction:l,context:C,service:_,xNode:p,searchParams:y})=>{let a={action_id:l,with_context:{...C}},c=y?`/load_action?${n(y)}`:"/load_action";return e.requests.post(c,a,{headers:{"Content-Type":"application/json","X-Node":p}},_)},[e]),r=useCallback(async({model:l,ids:C=[],context:_,method:p,service:y,xNode:a})=>{try{let c={model:l,method:p,ids:C,with_context:_};return e.requests.post("/call",c,{headers:{"Content-Type":"application/json",...a?{"X-Node":a}:{}}},y)}catch(c){throw console.error("Error when calling button action:",c),c}},[e]),o=useCallback(async({model:l,ids:C,context:_,service:p,xNode:y})=>{let a={model:l,method:"unlink",ids:C,with_context:_};return e.requests.post("/call",a,{headers:{"Content-Type":"application/json"},...y?{"X-Node":y}:{}},p)},[e]),n$1=useCallback(async({model:l,id:C,context:_,service:p,xNode:y})=>{let a={model:l,method:"copy",ids:C,with_context:_};return e.requests.post("/call",a,{headers:{"Content-Type":"application/json"},...y?{"X-Node":y}:{}},p)},[e]),s=useCallback(async({id:l})=>{let C={model:"ir.actions.report",method:"web_read",id:l,kwargs:{specification:{report_name:{}}}};return e.requests.post("/call",C,{headers:{"Content-Type":"application/json"}})},[e]),i=useCallback(async({id:l,report:C,db:_})=>{let y=n({report:C,id:l,type:"pdf",file_response:true,db:_}),a=`/report?${y}`;return e.requests.get(a,{headers:{"Content-Type":"application/json"},responseType:"arraybuffer"})},[e]),u=useCallback(async({idAction:l,context:C,service:_,xNode:p,searchParams:y})=>{let a={action_id:l,with_context:{...C}},c=y?`/run_action?${n(y)}`:"/run_action";return e.requests.post(c,a,{headers:{"Content-Type":"application/json",...p?{"X-Node":p}:{}}},_)},[e]),m=useCallback(async({kwargs:l,context:C,service:_,xNode:p})=>{let y={model:"stock.move",method:"action_generate_lot_line_vals",with_context:{...C},kwargs:l};return e.requests.post("/call",y,{headers:{"Content-Type":"application/json"},...p?{"X-Node":p}:{}},_)},[e]);return {loadAction:t,callButton:r,removeRows:o,duplicateRecord:n$1,getPrintReportName:s,print:i,runAction:u,generateSerialNumber:m}}var xo=createContext(null),No=({supabaseUrl:e,supabaseKey:t,schema:r="public",children:o})=>{let n=useMemo(()=>!e||!t?null:createClient(e,t,{db:{schema:r}}),[e,t,r]);return jsx(xo.Provider,{value:n,children:o})},qo=()=>{let e=useContext(xo);if(!e)throw new Error("useSupabase must be used within a SupabaseProvider or check your env config");return e},L=()=>useContext(xo);function A(){let{env:e}=w(),t=L(),r=useCallback(async d=>{let g=Object.fromEntries(Object.entries({username:d.email,password:d.password,grant_type:e?.config?.grantType||"",client_id:e?.config?.clientId||"",client_secret:e?.config?.clientSecret||""}).filter(([G,S])=>!!S)),T=new URLSearchParams(g).toString();return e?.requests?.post(d.path,T,{headers:{"Content-Type":"application/x-www-form-urlencoded"}},d.service)},[e]),o=useCallback(async d=>{if(!t)return {data:null,error:{message:"Supabase client is not initialized"}};let{data:g,error:T}=await t.auth.signInWithPassword({email:d.email,password:d.password});return {data:g,error:T}},[t]),n=useCallback(async d=>{let g={login:d,url:`${window.location.origin}/reset-password`};return e?.requests?.post("/reset_password",g,{headers:{"Content-Type":"application/json"}})},[e]),s=useCallback(async({email:d,with_context:g,method:T})=>{let G={method:T,kwargs:{vals:{email:d}},with_context:g};return e?.requests?.post("/call",G,{headers:{"Content-Type":"application/json"}})},[e]),i=useCallback(async(d,g)=>{let T={token:g,password:d.password,new_password:d.confirmPassword};return e?.requests?.post("/change_password",T,{headers:{"Content-Type":"application/json"}})},[e]),u=useCallback(async({method:d,password:g,with_context:T})=>{let G={method:d,kwargs:{vals:{password:g}},with_context:T};return e?.requests?.post("/call",G,{headers:{"Content-Type":"application/json"}})},[e]),m=useCallback(async(d,g)=>{let T={token:g,old_password:d.oldPassword,new_password:d.newPassword};return e?.requests?.post("/change_password_parent",T,{headers:{"Content-Type":"application/json"}})},[e]),l=useCallback(async d=>{let g={token:d};return e?.requests?.post("/check_token",g,{headers:{"Content-Type":"application/json"}})},[e]),C=useCallback(async d=>{let g={};return e?.requests?.post("/action-token/validate",g,{headers:{"Content-Type":"application/json","X-Use-Action-Token":"true","X-Action-Token":d}})},[e]),_=useCallback(async({db:d,state:g,access_token:T})=>e?.requests?.post("/token/generate",{state:g,access_token:T},{headers:{"Content-Type":"application/json"}}),[e]),p=useCallback(async d=>e?.requests?.get("/oauth/providers",{params:{db:d}}),[e]),y=useCallback(async d=>{let g=new URLSearchParams;return g.append("code",d),g.append("grant_type","authorization_code"),g.append("client_id",e?.config?.clientId||""),g.append("redirect_uri",e?.config?.redirectUri||""),e?.requests?.post("/token",g,{headers:{"Content-Type":"application/x-www-form-urlencoded"}},"id")},[e]),a=useCallback(async d=>e?.requests?.post("/logout",{},{headers:{"Content-Type":"application/json","X-Use-Refresh-Token":"true"},withCredentials:true},d),[e]),c=useCallback(async({shortName:d,service:g})=>{let T={short_name:d};return e?.requests.post("/tenant-mapping",T,{headers:{"Content-Type":"application/json"}},g)},[e]),P=useCallback(async({phone:d,name:g,service:T,xNode:G})=>{let S={phone:d,name:g};return e?.requests.post("/emenu/auth/token",S,{headers:{"Content-Type":"application/json",...G?{"X-Node":G}:{}}},T)},[e]);return {login:r,loginSupabase:o,forgotPassword:n,forgotPasswordSSO:s,resetPassword:i,resetPasswordSSO:u,updatePassword:m,isValidToken:l,isValidActionToken:C,loginSocial:_,getProviders:p,getAccessByCode:y,logout:a,getTenantMapping:c,getToken:P}}function $(){let{env:e}=w(),t=useCallback(async(o,n)=>await e.requests.get("/company",{headers:n?{...n,"Content-Type":"application/json"}:{"Content-Type":"application/json"}},o),[e]),r=useCallback(async(o,n)=>{let s={ids:[o],model:"res.company",method:"web_read",kwargs:{specification:{primary_color:{},secondary_color:{},logo:{},display_name:{},secondary_logo:{}}}};return await e.requests.post("/call",s,{headers:{"Content-Type":"application/json"}},n)},[e]);return {getCurrentCompany:t,getInfoCompany:r}}function q(){let{env:e}=w(),t=useCallback(async({formData:m,service:l,xNode:C})=>e.requests.post("/upload/file",m,{headers:{"X-Node":C}},l),[e]),r=useCallback(async({formData:m,service:l,xNode:C})=>e.requests.post("/upload/file",m,{headers:{"X-Node":C}},l),[e]),o=useCallback(async({id:m,selectedSheet:l,isHeader:C,context:_,service:p,xNode:y})=>{let a={model:"base_import.import",method:"parse_preview",ids:[m],kwargs:{options:{import_skip_records:[],import_set_empty_fields:[],fallback_values:{},name_create_enabled_fields:{},encoding:"",separator:"",quoting:'"',date_format:"",datetime_format:"",float_thousand_separator:",",float_decimal_separator:".",advanced:true,has_headers:C,keep_matches:false,limit:2e3,sheets:[],sheet:l,skip:0,tracking_disable:true}},with_context:_};return e.requests.post("/call",a,{headers:{"Content-Type":"application/json","X-Node":y}},p)},[e]),n=useCallback(async({columns:m,fields:l,idFile:C,options:_,dryrun:p,context:y,service:a,xNode:c})=>{let P={model:"base_import.import",method:"execute_import",ids:[C],kwargs:{fields:l,columns:m,options:_,dryrun:p},with_context:y};return e.requests.post("/call",P,{headers:{"Content-Type":"application/json","X-Node":c}},a)},[e]),s=useCallback(async({model:m,service:l,xNode:C,context:_})=>{let p={model:m,method:"get_import_templates",args:[],context:_};return e.requests.post("/call",p,{headers:{"Content-Type":"application/json","X-Node":C}},l)},[e]),i=useCallback(async({ids:m,model:l,isShow:C,parentField:_,fieldType:p,parentName:y,prefix:a,name:c,context:P,importCompat:d,service:g,xNode:T})=>{let G={model:l,import_compat:d,domain:[["id","in",m]],with_context:P};return C&&(G.parent_field=_,G.parent_field_type=p,G.parent_name=y,G.name=c,G.prefix=a,G.exclude=[null]),e.requests.post("/export/get_fields",G,{headers:{"Content-Type":"application/json","X-Node":T}},g)},[e]),u=useCallback(async({model:m,domain:l,ids:C,fields:_,type:p,importCompat:y,context:a,groupby:c,service:P,xNode:d})=>{let g={model:m,domain:l,ids:C,import_compat:y,fields:_,with_context:a,groupby:c??[]};return e.requests.post_excel(`/export/${p}`,g,{headers:{"Content-Type":"application/json",...d?{"X-Node":d}:{}}},P)},[e]);return {uploadFileExcel:t,uploadIdFile:r,parsePreview:o,executeImport:n,getFileExcel:s,getFieldExport:i,exportExcel:u}}function D(){let{env:e}=w(),t=useCallback(async({data:p})=>{let y={thread_id:p.thread_id,thread_model:p.thread_model,limit:100,with_context:{lang:p.lang}};return e.requests.post("/chatter/thread/messages",y,{headers:{"Content-Type":"application/json"}})},[e]),r=useCallback(async({data:p,xNode:y,service:a})=>{let c={thread_id:p?.thread_id,thread_model:p?.thread_model,limit:p?.limit,with_context:p?.with_context,request_list:p?.request_list};return e.requests.post("/mail/thread/data",c,{headers:{"Content-Type":"application/json",...y?{"X-Node":y}:{}}},a)},[e]),o=useCallback(async({data:p,xNode:y,service:a})=>{let c={thread_id:p?.thread_id,thread_model:p?.thread_model,limit:p?.limit,with_context:p?.with_context};return e.requests.post("/mail/thread/messages",c,{headers:{"Content-Type":"application/json",...y?{"X-Node":y}:{}}},a)},[e]),n=useCallback(async({data:p})=>{let y={context:{tz:"Asia/Saigon",uid:2,allowed_company_ids:[1],mail_post_autofollow:false,temporary_id:142183.01},post_data:{body:p.message,message_type:"comment",attachment_ids:p.attachment_ids,attachment_tokens:[],subtype_xmlid:p.subtype},thread_id:Number(p.thread_id),thread_model:p.thread_model};return e.requests.post("/chatter/message/post",y,{headers:{"Content-Type":"application/json"}})},[e]),s=useCallback(async({data:p})=>{let y={attachment_ids:[],attachment_tokens:[],body:"",message_id:p.message_id};return e.requests.post("/chatter/message/update_content",y,{headers:{"Content-Type":"application/json"}})},[e]),i=useCallback(async({data:p})=>e.requests.get(`/web/image?filename=${p.filename}&unique=${p.checksum}&width=1920&height=300`,{headers:{"Content-Type":"application/json"}}),[e]),u=useCallback(async({formData:p,service:y,xNode:a})=>e.requests.post("/mail/attachment/upload",p,{headers:{...a?{"X-Node":a}:{}}},y),[e]),m=useCallback(async({formData:p,service:y,xNode:a,path:c})=>e.requests.post(c,p,{headers:{...a?{"X-Node":a}:{}}},y),[e]),l=useCallback(async({data:p})=>{let y={model:p.model,method:"get_formview_action",ids:p.id?[p.id]:[],with_context:p.context};return e.requests.post("/call",y,{headers:{"Content-Type":"application/json"}})},[e]),C=useCallback(async({data:p})=>{let y={[p.name]:p.stage_id},a={model:p.model,method:"web_save",with_context:{lang:p.lang,allowed_company_ids:[1],uid:2,search_default_my_ticket:true,search_default_is_open:true},ids:[p.id],kwargs:{vals:y,specification:{}}};return e.requests.post("/call",a,{headers:{"Content-Type":"application/json"}})},[e]),_=useCallback(async({method:p,context:y,service:a,xNode:c})=>e?.requests?.post("/call",{method:p,with_context:y},{headers:{"Content-Type":"application/json",...c?{"X-Node":c}:{}}},a),[e]);return {getComment:t,sentComment:n,deleteComment:s,getImage:i,uploadImage:u,getFormView:l,changeStatus:C,uploadFile:m,getThreadMessages:o,getThreadData:r,getExternalTab:_}}function z(){let{env:e}=w(),t=useCallback(async({model:o,width_context:n})=>{let s={model:o,method:"web_read_group",kwargs:{domain:[["stage_id.fold","=",false]],fields:["color:sum"],groupby:["stage_id"]},width_context:n};return e.requests.post("/call",s,{headers:{"Content-Type":"application/json"}})},[e]),r=useCallback(async({field:o,color:n,model:s,width_context:i})=>{let u={model:s,method:"read_progress_bar",kwargs:{domain:[],group_by:"stage_id",progress_bar:{colors:n,field:o}},width_context:i};return e.requests.post("/call",u,{headers:{"Content-Type":"application/json"}})},[e]);return {getGroups:t,getProgressBar:r}}function E(){let{env:e}=w(),t=useCallback(async({domain:a,spectification:c,model:P})=>{let d={model:P,method:"web_search_read",kwargs:{specification:c,domain:a,limit:100,offset:0}};return e.requests.post("/call",d,{headers:{"Content-Type":"application/json"}})},[e]),r=useCallback(async()=>{let a={model:"res.currency",method:"web_search_read",kwargs:{specification:{icon_url:{},name:{}},domain:[["active","=",true]],limit:100,offset:0}};return e.requests.post("/call",a,{headers:{"Content-Type":"application/json"}})},[e]),o=useCallback(async()=>{let a={model:"res.currency",method:"web_search_read",kwargs:{specification:{name:{},icon_url:{},rate_ids:{fields:{company_rate:{},sell:{}}}},domain:[["active","=",true]],limit:100,offset:0}};return e.requests.post("/call",a,{headers:{"Content-Type":"application/json"}})},[e]),n$1=useCallback(async({data:a,service:c,xNode:P,searchParams:d})=>{let g=a.type=="calendar"?{fields:a?.fields}:a.fields&&a.fields.length>0&&a.groupby&&a.groupby.length>0&&a.groupby[0]?{fields:a.fields,groupby:a.groupby}:{count_limit:10001,order:a.sort,specification:a.specification},T={model:String(a.model),method:a.type=="calendar"?"search_read":g.fields&&g.groupby?"web_read_group":"web_search_read",ids:a.ids,with_context:a.context,kwargs:{domain:a.domain,limit:a.limit,offset:a.offset,...g}},G=d?`/call?${n(d)}`:"/call";return e.requests.post(G,T,{headers:{"Content-Type":"application/json",...P?{"X-Node":P}:{}}},c)},[e]),s=useCallback(async({data:a})=>{let c=a.type=="calendar"?a?.fields:a.fields&&a.fields.length>0&&a.groupby&&a.groupby.length>0&&a.groupby[0]?{fields:a.fields,groupby:a.groupby}:{count_limit:10001,order:a.sort,specification:a.specification},P={model:String(a.model),method:a.type=="calendar"?"search_read":c.fields&&c.groupby?"web_read_group":"web_search_read",ids:a.ids,with_context:a.context,kwargs:{domain:a.domain,limit:a.limit,offset:a.offset,fields:a.fields,...c}};return e.requests.post("/call",P,{headers:{"Content-Type":"application/json"}})},[e]),i=useCallback(async({model:a,ids:c=[],specification:P={},domain:d=[],offset:g,order:T,context:G={},limit:S=10})=>{let v={model:a,method:"web_search_read",ids:c,with_context:G,kwargs:{specification:P,domain:d,limit:S,offset:g,order:T}};return e.requests.post("/call",v,{headers:{"Content-Type":"application/json"}})},[e]),u=useCallback(async({ids:a=[],model:c,specification:P,context:d,service:g,xNode:T})=>{let G={model:c,method:"web_read",ids:a,with_context:d,kwargs:{specification:P}};return e.requests.post("/call",G,{headers:{"Content-Type":"application/json",...T?{"X-Node":T}:{}}},g)},[e]),m=useCallback(async({model:a,ids:c=[],data:P={},specification:d={},context:g={},path:T,service:G,xNode:S})=>{let v={model:a,method:"web_save",with_context:g,ids:c,kwargs:{vals:P,specification:d}};return e.requests.post(T??"/call",v,{headers:{"Content-Type":"application/json",...S?{"X-Node":S}:{}}},G)},[e]),l=useCallback(async({ids:a=[],model:c,service:P})=>{let d={model:c,method:"unlink",ids:a};return e.requests.post("/call",d,{headers:{"Content-Type":"application/json"}},P)},[e]),C=useCallback(async({ids:a=[],model:c,object:P,specification:d,context:g,fieldChange:T,service:G,xNode:S})=>{let v={model:c,method:"onchange",ids:a,with_context:g,args:[P||{},T||[],d]};return e.requests.post("/call",v,{headers:{"Content-Type":"application/json",...S?{"X-Node":S}:{}}},G)},[e]),_=useCallback(async({model:a,service:c,xNode:P})=>{let d={model:a,method:"get_fields_onchange"};return e.requests.post("/call",d,{headers:{"Content-Type":"application/json",...P?{"X-Node":P}:{}}},c)},[e]),p=useCallback(a=>{for(let c in a)c==="display_name"&&delete a[c],!a[c]&&a[c]!==0&&(a[c]=false);return {...a}},[]),y=useCallback((a,c,P)=>{for(let d in a)a[d]===false?c&&P?c?.models?.[P]?.[d]?.type!=="boolean"&&(a[d]=null):a[d]=null:a[d]!==false&&P!==void 0&&(c?.models?.[P]?.[d]?.type==="one2many"||c?.models?.[P]?.[d]?.type==="many2many")&&(a[d]=(a[d]??=[])?.map(g=>{let T=c?.models?.[P]?.[d]?.relation;if(T!==void 0){if(c?.models?.[T])return g?.length>=3?y(g[2],c,T):y(g,c,T);if(g?.length>=3)return g[2];if(g!==0)return g}})?.filter(Boolean));return {...a}},[]);return {getListMyBankAccount:t,getCurrency:r,getConversionRate:o,getAll:n$1,getListCalendar:s,getList:i,getDetail:u,save:m,deleteApi:l,onChange:C,getListFieldsOnchange:_,parseORMOdoo:p,toDataJS:y}}function W(){let{env:e}=w(),t=useCallback(async(n,s,i)=>e?.requests?.get(s||"/userinfo",{headers:i?{...i,"Content-Type":"application/x-www-form-urlencoded"}:{"Content-Type":"application/x-www-form-urlencoded"}},n),[e]),r=useCallback(async({context:n,id:s})=>{let i={model:"res.users",method:"web_read",ids:[s],with_context:n,kwargs:{specification:{display_name:{},image_1920:{},name:{},login:{},email:{},password:{},visible_group_id:{fields:{id:{},display_name:{}}},company_id:{fields:{id:{},display_name:{}}}}}};return e.requests.post("/call",i,{headers:{"Content-Type":"application/json"}})},[e]),o=useCallback(async({id:n,values:s,service:i})=>{let u={model:"res.users",domain:[["id","=",n]],values:s};return e?.requests.post(c?.CREATE_UPDATE_PATH,u,{headers:{"Content-Type":"application/json"}},i)},[e]);return {getProfile:t,getUser:r,switchUserLocale:o}}function h(){let{env:e}=w(),t=useCallback(async({model:S,views:v,context:b={},options:F={},aid:R,service:V,xNode:Y,searchParams:se})=>{let ho={load_filters:true,toolbar:true,action_id:R},Qr={model:S,method:"get_fields_view_v2",kwargs:{views:v,options:{...F,...ho}},with_context:b},Kr=se?`/call?${n(se)}`:"/call";return e?.requests?.post(Kr,Qr,{headers:{"Content-Type":"application/json",...Y?{"X-Node":Y}:{}}},V)},[e]),r=useCallback(async(S,v,b,F)=>{let R={model:"ir.ui.menu",method:"web_search_read",ids:[],with_context:S,kwargs:{specification:v,domain:b??["&",["is_display","=",true],"&",["active","=",true],["parent_id","=",false]]}};return e?.requests?.post("/call",R,{headers:{"Content-Type":"application/json"}},F)},[e]),o=useCallback(async(S,v)=>{let b={model:"ir.actions.act_window",method:"web_read",ids:[S],with_context:v,kwargs:{specification:{id:{},name:{},res_model:{},views:{},view_mode:{},mobile_view_mode:{},domain:{},context:{},groups_id:{},search_view_id:{}}}};return e?.requests?.post("/call",b,{headers:{"Content-Type":"application/json"}})},[e]),n$1=useCallback(async({model:S,ids:v,context:b,offset:F,service:R,xNode:V})=>{let Y={model:S,with_context:b,ids:v,field:"sequence",...F>0?{offset:F}:{}};return e?.requests.post("/web/dataset/resequence",Y,{headers:{"Content-Type":"application/json",...V?{"X-Node":V}:{}}},R)},[e]),s=useCallback(async({data:S,service:v,xNode:b})=>{let F={model:S.model,ids:[],method:"get_data_select",with_context:S.context,kwargs:{count_limit:10001,domain:S.domain?S.domain:[],offset:0,order:"",specification:S?.specification??{id:{},name:{},display_name:{}}}};return e?.requests.post("/call",F,{headers:{"Content-Type":"application/json",...b?{"X-Node":b}:{}}},v)},[e]),i=useCallback(async()=>e.requests.post("/load_message_failures",{},{headers:{"Content-Type":"application/json"}}),[e]),u=useCallback(async()=>e?.requests?.get("",{headers:{"Content-Type":"application/json"}}),[e]),m=useCallback(async({redirect_uri:S,state:v,client_id:b,scopes:F})=>{let R={redirect_uri:S,state:v,client_id:b,scopes:F};return e?.requests.post("/grant-access",R,{headers:{"Content-Type":"application/json"},withCredentials:true},"id")},[e]),l=useCallback(async({method:S,token:v})=>{let b={method:S,with_context:{token:v}};return e?.requests.post("/call",b,{headers:{"Content-Type":"application/json"}},"id")},[e]),C=useCallback(async({method:S,token:v})=>{let b={method:S,with_context:{token:v}};return e?.requests.post("/call",b,{headers:{"Content-Type":"application/json"}},"id")},[e]),_=useCallback(async({method:S,model:v,kwargs:b,token:F})=>{let R={method:S,model:v,kwargs:b,with_context:{token:F}};return e?.requests.post("/call",R,{headers:{"Content-Type":"application/json"}},"id")},[e]),p=useCallback(async({redirect_uri:S,state:v,client_id:b,response_type:F,path:R,scope:V})=>{let se=`${new URLSearchParams({response_type:F,client_id:b,redirect_uri:S,state:v}).toString()}&scope=${encodeURIComponent(V)}`,ho=`${R}?${se}`;return e?.requests.get(ho,{headers:{"Content-Type":"application/json"},withCredentials:true},"id")},[e]),y=useCallback(({method:S,with_context:v,code:b,device:F,location:R})=>{let V={method:S,kwargs:{vals:{code:b,device:F,location:R}},with_context:v};return e?.requests.post("/call",V,{headers:{"Content-Type":"application/json"},withCredentials:true},"id")},[e]),a=useCallback(({method:S,with_context:v})=>{let b={method:S,with_context:v};return e?.requests.post("/call",b,{headers:{"Content-Type":"application/json"}},"id")},[e]),c=useCallback(({method:S,action_token:v,code:b})=>{let F={method:S,kwargs:{vals:{code:b}},with_context:{action_token:v}};return e?.requests.post("/call",F,{headers:{"Content-Type":"application/json"}})},[e]),P=useCallback(async({service:S,xNode:v,body:b})=>e?.requests?.post("/mail/data",b,{headers:{"Content-Type":"application/json",...v?{"X-Node":v}:{}}},S),[e]),d=useCallback(async({service:S,xNode:v,ids:b,kwargs:F})=>{let R={model:"res.country",ids:b,method:"get_data_select",kwargs:F};return e?.requests?.post("/call",R,{headers:{"Content-Type":"application/json",...v?{"X-Node":v}:{}}},S)},[e]),g=useCallback(async({service:S,xNode:v,ids:b,kwargs:F})=>{let R={model:"res.country.state",ids:b,method:"get_data_select",kwargs:F};return e?.requests?.post("/call",R,{headers:{"Content-Type":"application/json",...v?{"X-Node":v}:{}}},S)},[e]),T=useCallback(async({service:S,xNode:v,kwargs:b})=>{let F={model:"res.country.ward",method:"get_data_select",kwargs:b};return e?.requests?.post("/call",F,{headers:{"Content-Type":"application/json",...v?{"X-Node":v}:{}}},S)},[e]),G=useCallback(async({service:S,xNode:v,kwargs:b,withContext:F})=>{let R={model:"res.partner.title",method:"get_data_select",kwargs:b,with_context:F};return e?.requests?.post("/call",R,{headers:{"Content-Type":"application/json",...v?{"X-Node":v}:{}}},S)},[e]);return {getView:t,getMenu:r,getActionDetail:o,getResequence:n$1,getSelectionItem:s,loadMessages:i,getVersion:u,grantAccess:m,removeTotpSetUp:l,requestSetupTotp:C,settingsWebRead2fa:_,signInSSO:p,verify2FA:y,get2FAMethods:a,verifyTotp:c,getNotifications:P,getCountry:d,getCity:g,getWard:T,getPartnerTitle:G}}function J(){let{env:e}=w(),t=useCallback(async({service:o,xNode:n,body:s})=>e.requests.post("/read_group",s,{headers:{"Content-Type":"application/json","X-Node":n}},o),[e]),r=useCallback(async({service:o,xNode:n,body:s,path:i,method:u="POST"})=>{let m={"Content-Type":"application/json","X-Node":n};return u==="GET"?e.requests.get(i,{headers:m},o):e.requests.post(i,s,{headers:m},o)},[e]);return {readGroup:t,getDataChart:r}}var Io=e=>({getASession:useCallback(async({model:r,args:o,domain:n,service:s,xNode:i})=>{let u={model:r,method:"web_search_read",args:o,kwargs:{domain:[n],specification:{name:{},user_id:{},config_id:{},start_at:{},stop_at:{},sequence_number:{},login_number:{},payment_method_ids:{},state:{},update_stock_at_closing:{},cash_register_balance_start:{}}}};return e?.requests.post("/call",u,{headers:{"Content-Type":"application/json",...i?{"X-Node":i}:{}}},s)},[e])});var Ho=e=>({addEntity:useCallback(({model:r,values:o,xNode:n,service:s,isCreateEndpoint:i=false,isSupa:u=false,supaCallback:m})=>{if(u&&m)return m(o);let l={model:r,values:o};return e?.requests.post(i?"/create":"/call",l,{headers:{"Content-Type":"application/json",...n?{"X-Node":n}:{}}},s)},[e])});var Vo=e=>({changeOrderPreparationState:useCallback(({orderId:r,stageId:o,preparationDisplayId:n,xNode:s,service:i})=>{let u={model:"pos_preparation_display.order",method:"change_order_stage",ids:r,kwargs:{stage_id:o,preparation_display_id:n}};return e?.requests.post("/call",u,{headers:{"Content-Type":"application/json",...s?{"X-Node":s}:{}}},i)},[e])});var Bo=e=>({checkPayment:useCallback(({model:r,ids:o,withContext:n,xNode:s,service:i})=>{let u={model:r,method:"check",ids:o,with_context:n};return e?.requests.post("/call",u,{headers:{"Content-Type":"application/json",...s?{"X-Node":s}:{}}},i)},[e])});var Xo=e=>({createEInvoice:useCallback(async({service:r,xNode:o,kwargs:n,ids:s,withContext:i})=>{let u={model:"pos.order",method:"create_e_invoice",kwargs:n,ids:s,with_context:i};return e?.requests?.post("/call",u,{headers:{"Content-Type":"application/json",...o?{"X-Node":o}:{}}},r)},[e])});var Wo=e=>({createEntity:useCallback(({model:r,args:o,xNode:n,service:s,isSupa:i=false,supaCallback:u})=>{if(i&&u)return u(o);let m={model:r,method:"create",args:o};return e?.requests.post("/call",m,{headers:{"Content-Type":"application/json",...n?{"X-Node":n}:{}}},s)},[e])});var Qo=e=>({createPosConfig:useCallback(({model:r,name:o,modulePosRestaurant:n,xNode:s,service:i})=>{let u={model:r,values:{name:o,module_pos_restaurant:n}};return e?.requests.post("/create",u,{headers:{"Content-Type":"application/json",...s?{"X-Node":s}:{}}},i)},[e])});var Ko=e=>({createSession:useCallback(({model:r,configId:o,xNode:n,service:s})=>{let i={model:r,method:"create",args:[{config_id:o}]};return e?.requests.post("/call",i,{headers:{"Content-Type":"application/json",...n?{"X-Node":n}:{}}},s)},[e])});var $o=e=>({deleteEntity:useCallback(({model:r,ids:o,xNode:n,service:s,method:i,isSupa:u=false,supaCallback:m})=>{if(u&&m)return m(o);let l={model:r,ids:o,method:i};return e?.requests.post("/call",l,{headers:{"Content-Type":"application/json",...n?{"X-Node":n}:{}}},s)},[e])});var zo=e=>({generatePaymentQRInfo:useCallback(({orderId:r,amount:o,posSessionId:n,xNode:s,service:i})=>{let u={order_id:r,amount:o,pos_session_id:n};return e?.requests.post("/payment/qr",u,{headers:{"Content-Type":"application/json",...s?{"X-Node":s}:{}}},i)},[e])});var Jo=e=>({getCurrentUser:useCallback(async({service:r,xNode:o,oauthUid:n,extraHeaders:s})=>e?.requests?.get(`/public/user/info/${n}`,{headers:s?{...s,"Content-Type":"application/json",...o?{"X-Node":o}:{}}:{"Content-Type":"application/json",...o?{"X-Node":o}:{}}},r),[e])});var Yo=e=>({getList:useCallback(async({model:r,domain:o$1,xNode:n,service:s,specification:i,offset:u,limit:m})=>{let l={model:r,method:"web_search_read",kwargs:o({domain:o$1,offset:u,limit:m,specification:i})};return e?.requests.post("/call",l,{headers:{"Content-Type":"application/json",...n?{"X-Node":n}:{}}},s)},[e])});var Zo=e=>({getOrderLine:useCallback(({model:r,ids:o,specification:n,xNode:s,service:i})=>{let u={model:r,method:"web_read",ids:o,kwargs:{specification:n}};return e?.requests.post("/call",u,{headers:{"Content-Type":"application/json",...s?{"X-Node":s}:{}}},i)},[e])});var er=e=>({getPinCode:useCallback(({serialNumber:r,xNode:o,service:n})=>{let s={serial_number:r};return e?.requests.post("/pos_device/get_pin_code",s,{headers:{"Content-Type":"application/json",...o?{"X-Node":o}:{}}},n)},[e])});var tr=e=>({getPOS:useCallback(({model:r,args:o,domain:n,xNode:s,service:i})=>{let u={model:r,method:"web_search_read",args:o,kwargs:{domain:n,specification:{cash_control:{},current_session_id:{fields:{display_name:{}}},current_session_state:{},pos_session_state:{},pos_session_duration:{},currency_id:{fields:{display_name:{}}},name:{},pos_session_username:{},last_session_closing_date:{},last_session_closing_cash:{},number_of_rescue_session:{},current_user_id:{fields:{display_name:{}}},customer_display_type:{},module_pos_restaurant:{}}}};return e?.requests.post("/call",u,{headers:{"Content-Type":"application/json",...s?{"X-Node":s}:{}}},i)},[e])});var or=e=>({getPreparationDisplayData:useCallback(({ids:r,xNode:o,service:n,withContext:s})=>{let i={model:"pos_preparation_display.display",method:"get_preparation_display_data",ids:r,with_context:s};return e?.requests.post("/call",i,{headers:{"Content-Type":"application/json",...o?{"X-Node":o}:{}}},n)},[e])});var rr=e=>({getProductImage:useCallback(({model:r,fields:o,limit:n$1,offset:s,domain:i,xNode:u,service:m,searchParams:l})=>{let C={model:r,fields:o,limit:n$1,offset:s,domain:i},_=l?`/search_read?${n(l)}`:"/search_read";return e?.requests.post(_,C,{headers:{"Content-Type":"application/json",...u?{"X-Node":u}:{}}},m)},[e])});var nr=e=>({handleCloseSession:useCallback(({model:r,ids:o,xNode:n,service:s,method:i})=>{let u={model:r,ids:o,method:i};return e?.requests.post("/call",u,{headers:{"Content-Type":"application/json",...n?{"X-Node":n}:{}}},s)},[e])});var sr=e=>({handleClosingDetailSession:useCallback(({model:r,ids:o,method:n,xNode:s,service:i,kwargs:u})=>{let m={model:r,ids:o,method:n,kwargs:u};return e?.requests.post("/call",m,{headers:{"Content-Type":"application/json",...s?{"X-Node":s}:{}}},i)},[e])});var ir=e=>({handleClosingSession:useCallback(({model:r,method:o,ids:n,kwargs:s,xNode:i,service:u})=>{let m={model:r,method:o,ids:n,kwargs:s};return e?.requests.post("/call",m,{headers:{"Content-Type":"application/json",...i?{"X-Node":i}:{}}},u)},[e])});var Po=(e,t=[])=>({modelName:e,data:t,fields:{},relations:{}}),ur=e=>{let t=L(),r=useCallback(async({model:n$1,ids:s,xNode:i,service:u,withContext:m,modelsToLoad:l=[],searchParams:C})=>{let _={model:n$1,method:"load_data",ids:s,with_context:m||{uid:37,lang:"vi_VN",tz:"Asia/Saigon"},kwargs:{models_to_load:l}},p=C?`/call?${n(C)}`:"/call";return e?.requests.post(p,_,{headers:{"Content-Type":"application/json",...i?{"X-Node":i}:{}}},u)},[e]),o=useCallback(async()=>{if(!t)return {};try{let n=Object.values(d);return (await Promise.all(n.map(async i=>{let u=f$1[i];if(!u)return Po(i);let{data:m,error:l}=await t.from(u).select("*");return l?(console.error(`Error loading ${i}:`,l),Po(i)):Po(i,m||[])}))).reduce((i,{modelName:u,...m})=>(i[u]=m,i),{})}catch(n){return console.error("Error loading data from Supabase:",n),{}}},[t]);return {loadDataPosSession:r,loadDataPosSessionSupabase:o}};var cr=e=>({manageOnChange:useCallback(({model:r,ids:o,args:n,xNode:s,service:i})=>{let u={model:r,method:"onchange",ids:o,args:n};return e?.requests.post("/call",u,{headers:{"Content-Type":"application/json",...s?{"X-Node":s}:{}}},i)},[e])});var pr=e=>({manageSession:useCallback(({model:r,method:o,ids:n,args:s,kwargs:i,xNode:u,service:m})=>{let l={model:r,method:o,ids:n,args:s,kwargs:i};return e?.requests.post("/call",l,{headers:{"Content-Type":"application/json",...u?{"X-Node":u}:{}}},m)},[e])});var mr=e=>({processOrder:useCallback(({orderId:r,xNode:o,service:n})=>{let s={model:"pos_preparation_display.order",method:"process_order",kwargs:{order_id:r}};return e?.requests.post("/call",s,{headers:{"Content-Type":"application/json",...o?{"X-Node":o}:{}}},n)},[e])});var dr=e=>({savePinCode:useCallback(({serialNumber:r,pinCode:o,xNode:n,service:s})=>{let i={serial_number:r,pin_code:o};return e?.requests.put("/pos_device/pin",i,{headers:{"Content-Type":"application/json",...n?{"X-Node":n}:{}}},s)},[e])});var lr=e=>({searchJournal:useCallback(({model:r,method:o,args:n,kwargs:s,xNode:i,service:u})=>{let m={model:r,method:o,args:n,kwargs:s};return e?.requests.post("/call",m,{headers:{"Content-Type":"application/json",...i?{"X-Node":i}:{}}},u)},[e])});var fr=e=>({updateClosedSession:useCallback(({model:r,domain:o,values:n,service:s,xNode:i})=>{let u={model:r,domain:o,values:n};return e?.requests.post("/create_update",u,{headers:{"Content-Type":"application/json",...i?{"X-Node":i}:{}}},s)},[e])});var yr=e=>({updateEntity:useCallback(({model:r,domain:o,values:n,isCreateEndpoint:s=true,xNode:i,service:u,isSupa:m=false,supaCallback:l})=>{if(m&&l)return l(n);let C={model:r,domain:o,values:n};return e?.requests.post(s?"/create_update":"/call",C,{headers:{"Content-Type":"application/json",...i?{"X-Node":i}:{}}},u)},[e])});var gr=e=>({updateOrderStatus:useCallback(({orderId:r,state:o,xNode:n,service:s})=>{let i={order_id:r,state:o};return e?.requests.put("/pos-order/status",i,{headers:{"Content-Type":"application/json",...n?{"X-Node":n}:{}}},s)},[e])});var Sr=e=>({completeCurrentStage:useCallback(({ids:r,withContext:o,xNode:n,service:s,requestStageId:i})=>{let u={model:"pos_preparation_display.orderline",method:"complete_current_stage",ids:r,kwargs:{request_stage_id:i},with_context:o||{lang:"vi_VN",tz:"Asia/Ho_Chi_Minh",uid:2}};return e?.requests.post("/call",u,{headers:{"Content-Type":"application/json",...n?{"X-Node":n}:{}}},s)},[e])});var Z=()=>{let e=L();return {addFloorSupabase:useCallback(async r=>{if(!e)return console.error("Supabase client not initialized"),null;try{let{data:o,error:n}=await e.from("restaurant_floors").insert({name:r.name,sequence:r.sequence??1,pos_config_ids:r.pos_config_ids??[],table_ids:r.table_ids??[]}).select("id, name").single();return n?(console.error("Error adding floor:",n),null):[[o.id,o.name]]}catch(o){return console.error("Error adding floor:",o),null}},[e])}};var ee=()=>{let e=L();return {addTableSupabase:useCallback(async r=>{if(!e)return console.error("Supabase client not initialized"),null;try{let{data:o,error:n}=await e.from("restaurant_tables").insert({floor_id:r.floor_id,table_number:r.table_number??0,seats:r.seats??1}).select("id, table_number").single();return n?(console.error("Error adding table:",n),null):[[o.id,o.table_number]]}catch(o){return console.error("Error adding table:",o),null}},[e])}};var te=()=>{let e=L();return {updateFloorSupabase:useCallback(async r=>{if(!e)return console.error("Supabase client not initialized"),false;try{let{id:o,...n}=r,{error:s}=await e.from("restaurant_floors").update(n).eq("id",o);return s?(console.error("Error updating floor:",s),!1):!0}catch(o){return console.error("Error updating floor:",o),false}},[e])}};var oe=()=>{let e=L();return {updateTableSupabase:useCallback(async r=>{if(!e)return console.error("Supabase client not initialized"),false;try{let{id:o,...n}=r,{error:s}=await e.from("restaurant_tables").update(n).eq("id",o);return s?(console.error("Error updating table:",s),!1):!0}catch(o){return console.error("Error updating table:",o),false}},[e])}};var re=()=>{let e=L();return {deleteFloorSupabase:useCallback(async r=>{if(!e)return console.error("Supabase client not initialized"),false;try{let{error:o}=await e.from("restaurant_floors").delete().eq("id",r.id);return o?(console.error("Error deleting floor:",o),!1):!0}catch(o){return console.error("Error deleting floor:",o),false}},[e])}};var ne=()=>{let e=L();return {deleteTableSupabase:useCallback(async r=>{if(!e)return console.error("Supabase client not initialized"),false;try{let{error:o}=await e.from("restaurant_tables").delete().eq("id",r.id);return o?(console.error("Error deleting table:",o),!1):!0}catch(o){return console.error("Error deleting table:",o),false}},[e])}};var Xn=[Ho,Io,Vo,Bo,Xo,Wo,Qo,Ko,$o,zo,Jo,Yo,Zo,er,tr,or,rr,nr,sr,ir,ur,cr,pr,mr,dr,lr,fr,yr,gr,Sr,Z,ee,te,oe,re,ne],f=()=>{let{env:e}=w(),t={};for(let r of Xn){let o=r(e);Object.assign(t,o);}return t};var Qn=()=>{let{forgotPassword:e}=A();return useMutation({mutationFn:t=>e(t)})},ae=Qn;var $n=()=>{let{forgotPasswordSSO:e}=A();return useMutation({mutationFn:({email:t,with_context:r,method:o})=>e({email:t,with_context:r,method:o})})},ue=$n;var Jn=()=>{let{getProviders:e}=A();return useMutation({mutationFn:t=>e(t?.db)})},ce=Jn;var Zn=()=>{let{isValidToken:e}=A();return useMutation({mutationFn:t=>e(t)})},pe=Zn;var ts=()=>{let{login:e}=A();return useMutation({mutationFn:t=>e(t)})},me=ts;var rs=()=>{let{loginSocial:e}=A();return useMutation({mutationFn:t=>e(t)})},de=rs;var ss=()=>{let{loginSupabase:e}=A();return useMutation({mutationFn:t=>e({email:t.email,password:t.password})})},le=ss;var as=()=>{let{resetPassword:e}=A();return useMutation({mutationFn:t=>e(t.data,t.token)})},fe=as;var cs=()=>{let{resetPasswordSSO:e}=A();return useMutation({mutationFn:({method:t,password:r,with_context:o})=>e({method:t,password:r,with_context:o})})},ye=cs;var ms=()=>{let{updatePassword:e}=A();return useMutation({mutationFn:t=>e(t.data,t.token)})},ge=ms;var ls=()=>{let{logout:e}=A();return useMutation({mutationFn:t=>e(t)})},Se=ls;var ys=()=>{let{getAccessByCode:e}=A();return useMutation({mutationFn:({code:t})=>e(t)})},Ce=ys;var Ss=()=>{let{isValidActionToken:e}=A();return useMutation({mutationFn:({actionToken:t})=>e(t)})},ve=Ss;var vs=()=>{let{getTenantMapping:e}=A();return useMutation({mutationFn:({shortName:t,service:r})=>e({shortName:t,service:r})})},he=vs;var xs=()=>{let{getToken:e}=A();return useMutation({mutationFn:({phone:t,name:r,service:o,xNode:n})=>e({phone:t,name:r,service:o,xNode:n})})},xe=xs;var Ps=()=>{let{getInfoCompany:e}=$();return useMutation({mutationFn:({service:t,id:r})=>e(r,t)})},_e=Ps;var bs=()=>{let{getCurrentCompany:e}=$();return useMutation({mutationFn:({service:t,extraHeaders:r})=>e(t,r)})},Pe=bs;var ws=(e=[])=>{let{getList:t}=E(),r={id:{},name:{}},o={model:"res.company",ids:e,specification:r};return useQuery({queryKey:["list_company",e],queryFn:()=>t(o),refetchOnWindowFocus:false})},Te=ws;var Gs=()=>{let{exportExcel:e}=q();return useMutation({mutationFn:({model:t,domain:r,ids:o,fields:n,type:s,importCompat:i,context:u,groupby:m,service:l,xNode:C})=>e({model:t,domain:r,ids:o,fields:n,type:s,importCompat:i,context:u,groupby:m,service:l,xNode:C})})},be=Gs;var Ds=()=>{let{getFieldExport:e}=q();return useMutation({mutationFn:({ids:t,model:r,isShow:o,parentField:n,fieldType:s,parentName:i,prefix:u,name:m,context:l,importCompat:C,service:_,xNode:p})=>e({ids:t,model:r,isShow:o,parentField:n,fieldType:s,parentName:i,prefix:u,name:m,context:l,importCompat:C,service:_,xNode:p})})},Ae=Ds;var Ms=({model:e,service:t,xNode:r,context:o})=>{let{getFileExcel:n}=q();return useQuery({queryKey:["excel",e],queryFn:()=>n({model:e,service:t,xNode:r,context:o}).then(s=>s||[]),refetchOnWindowFocus:false})},we=Ms;var Os=()=>{let{parsePreview:e}=q();return useMutation({mutationFn:({id:t,selectedSheet:r,isHeader:o,context:n,service:s,xNode:i})=>e({id:t,selectedSheet:r,isHeader:o,context:n,service:s,xNode:i})})},Ee=Os;var qs=()=>{let{uploadFileExcel:e}=q();return useMutation({mutationFn:({formData:t,service:r,xNode:o})=>e({formData:t,service:r,xNode:o})})},Ge=qs;var ks=()=>{let{uploadIdFile:e}=q();return useMutation({mutationFn:({formData:t,service:r,xNode:o})=>e({formData:t,service:r,xNode:o})})},Fe=ks;var Is=()=>{let{executeImport:e}=q();return useMutation({mutationFn:({fields:t,columns:r,idFile:o,options:n,dryrun:s,context:i,service:u,xNode:m})=>e({fields:t,columns:r,idFile:o,options:n,dryrun:s,context:i,service:u,xNode:m})})},De=Is;var Vs=()=>{let{changeStatus:e}=D();return useMutation({mutationFn:({data:t})=>e({data:t})})},Le=Vs;var Xs=()=>{let{deleteComment:e}=D();return useMutation({mutationFn:({data:t})=>e({data:t})})},Me=Xs;var Qs=({data:e,queryKey:t})=>{let{getComment:r}=D();return useQuery({queryKey:t,queryFn:()=>r({data:e}).then(o=>{if(o)return o}),enabled:!!e.thread_id&&!isNaN(e.thread_id),refetchOnWindowFocus:false})},Re=Qs;var $s=({data:e,queryKey:t,enabled:r})=>{let{getFormView:o}=D();return useQuery({queryKey:t,queryFn:()=>o({data:e}).then(n=>{if(n)return n}),enabled:r,refetchOnWindowFocus:false})},Oe=$s;var Js=()=>{let{sentComment:e}=D();return useMutation({mutationFn:({data:t})=>e({data:t})})},Ne=Js;var Zs=()=>{let{uploadImage:e}=D();return useMutation({mutationFn:({formData:t,service:r,xNode:o})=>e({formData:t,service:r,xNode:o})})},qe=Zs;var ti=()=>{let{uploadFile:e}=D();return useMutation({mutationFn:({formData:t,service:r,xNode:o,path:n})=>e({formData:t,service:r,xNode:o,path:n})})},Ue=ti;var ri=({data:e,queryKey:t,enabled:r,service:o,xNode:n})=>{let{getThreadData:s}=D();return useQuery({queryKey:t,queryFn:()=>s({data:e,service:o,xNode:n}).then(i=>{if(i)return i}),enabled:r,refetchOnWindowFocus:false})},ke=ri;var si=({data:e,queryKey:t,enabled:r,service:o,xNode:n})=>{let{getThreadMessages:s}=D();return useQuery({queryKey:t,queryFn:()=>s({data:e,service:o,xNode:n}).then(i=>{if(i)return i}),enabled:r,refetchOnWindowFocus:false})},je=si;var ai=({data:e,queryKey:t,enabled:r,service:o,xNode:n})=>{let{getExternalTab:s}=D();return useQuery({queryKey:t,queryFn:()=>s({method:e?.method,context:e?.context,service:o,xNode:n}).then(i=>{if(i)return i}),enabled:r,refetchOnWindowFocus:false})},Ie=ai;var ci=()=>{let{deleteApi:e}=E();return useMutation({mutationFn:({ids:t,model:r,service:o})=>e({ids:t,model:r,service:o})})},He=ci;var mi=({data:e,queryKey:t,viewResponse:r})=>{let{getAll:o}=E();return useQuery({queryKey:t,queryFn:()=>o({data:e}).then(n=>{if(n)return n}),enabled:!!e.specification&&!!e.model&&!!e.domain&&!!r,refetchOnWindowFocus:false})},Ve=mi;var li=()=>{let{getConversionRate:e}=E();return useQuery({queryKey:["currency-rate"],queryFn:()=>e().then(t=>{if(t)return t}),enabled:true})},Be=li;var yi=()=>{let{getCurrency:e}=E();return useQuery({queryKey:["currency"],queryFn:()=>e().then(t=>{if(t)return t}),enabled:true})},Xe=yi;var Si=()=>{let{getDetail:e}=E();return useMutation({mutationFn:({model:t,ids:r,specification:o,context:n,service:s,xNode:i})=>e({model:t,ids:r,specification:o,context:n,service:s,xNode:i})})},We=Si;var vi=({model:e,service:t,xNode:r,enabled:o})=>{let{getListFieldsOnchange:n}=E();return useQuery({queryKey:[`field-onchange-${e}`,e],queryFn:()=>n({model:e,service:t,xNode:r}).then(s=>{if(s)return s}),refetchOnWindowFocus:false,enabled:o,staleTime:1/0})},Qe=vi;var xi=({domain:e,spectification:t,model:r})=>{let{getListMyBankAccount:o}=E();return useQuery({queryKey:["bank-account",r,e],queryFn:()=>o({domain:e,spectification:t,model:r}).then(n=>{if(n)return n}),enabled:true})},Ke=xi;var Pi=()=>({initModel:useCallback(t=>{switch(t?.name){default:return new a$2(t)}},[])}),$e=Pi;var Ti=()=>{let{toDataJS:e,parseORMOdoo:t}=E();return {toDataJS:e,parseORM:t}},ze=Ti;var Ai=()=>{let{onChange:e}=E();return useMutation({mutationFn:({ids:t,model:r,specification:o,context:n,object:s,fieldChange:i,service:u,xNode:m})=>e({ids:t,model:r,specification:o,context:n,object:s,fieldChange:i,service:u,xNode:m})})},Je=Ai;var Ei=()=>{let{save:e}=E();return useMutation({mutationFn:({ids:t,model:r,data:o,specification:n,context:s,path:i,service:u,xNode:m})=>e({ids:t,model:r,data:o,specification:n,context:s,path:i,service:u,xNode:m})})},Ye=Ei;var Fi=(e,t,r)=>{let{getProfile:o}=W();return useMutation({mutationFn:()=>o(e,t,r)})},Ze=Fi;var Li=()=>{let{getUser:e}=W();return useMutation({mutationFn:({id:t,context:r})=>e({id:t,context:r})})},et=Li;var Ri=()=>{let{switchUserLocale:e}=W();return useMutation({mutationFn:({data:t,service:r})=>e({id:t.data.id,values:t.data.values,service:r})})},tt=Ri;var Ni=()=>{let{callButton:e}=O();return useMutation({mutationFn:({model:t,ids:r,context:o,method:n,service:s,xNode:i})=>e({model:t,ids:r,context:o,method:n,service:s,xNode:i}),onSuccess:t=>t})},ot=Ni;var Ui=()=>{let{duplicateRecord:e}=O();return useMutation({mutationFn:({id:t,model:r,context:o,service:n,xNode:s})=>e({id:t,model:r,context:o,service:n,xNode:s})})},rt=Ui;var ji=({aid:e,context:t,enabled:r,id:o,model:n,queryKey:s})=>{let {getActionDetail:i}=h();return useQuery({queryKey:s,queryFn:async()=>{if(e){let m=await i(e,t);if(m&&m.length>0)return m[0]}},enabled:r,refetchOnWindowFocus:false,staleTime:1/0})},nt=ji;var Hi=(e,t,r)=>{let{getListCalendar:o}=E();return useQuery({queryKey:t,queryFn:()=>o({data:e}).then(n=>n||[]),enabled:r,refetchOnWindowFocus:false,staleTime:0})},st=Hi;var Bi=({model:e,width_context:t})=>{let{getGroups:r}=z();return useQuery({queryKey:[e,t],queryFn:()=>r({model:e,width_context:t}).then(o=>o||[]),refetchOnWindowFocus:false})},it=Bi;var Wi=(e,t,r,o,n,s)=>{let{getAll:i}=E();return useQuery({queryKey:t,queryFn:()=>i({data:e,service:o,xNode:n,searchParams:s}).then(u=>u||[]),enabled:r,refetchOnWindowFocus:false,staleTime:0})},at=Wi;var Ki=(e,t,r,o,n)=>{let{getMenu:s}=h();return useQuery({queryKey:["menus",e],queryFn:()=>s(e,t,o,n).then(i=>i&&i?.records&&i?.records?.length>0?i?.records:[]),refetchOnWindowFocus:false,staleTime:1/0,enabled:r})},ut=Ki;var zi=()=>{let{getPrintReportName:e}=O();return useMutation({mutationFn:({id:t})=>e({id:t})})},ct=zi;var Yi=({field:e,color:t,model:r,width_context:o})=>{let{getProgressBar:n}=z();return useQuery({queryKey:[],queryFn:()=>n({field:e,color:t,model:r,width_context:o}).then(s=>s||[]),refetchOnWindowFocus:false})},pt=Yi;var ea=({data:e,queryKey:t,enabled:r,service:o,xNode:n})=>{let{getSelectionItem:s}=h();return useQuery({queryKey:t,queryFn:()=>s({data:e,service:o,xNode:n}),enabled:r,refetchOnWindowFocus:false})},mt=ea;var oa=({viewParams:e,enabled:t})=>{let{getView:r}=h();return useQuery({queryKey:["get_view_by_action",e?.model,e?.context,e?.aid,...e?.views??[]],queryFn:()=>r(e),enabled:!!t,refetchOnWindowFocus:false,staleTime:1/0})},dt=oa;var na=()=>{let{loadAction:e}=O();return useMutation({mutationFn:({idAction:t,context:r,service:o,xNode:n,searchParams:s})=>e({idAction:t,context:r,service:o,xNode:n,searchParams:s})})},lt=na;var ia=()=>{let{loadMessages:e}=h();return useQuery({queryKey:["load-message-failure"],queryFn:()=>e(),refetchOnWindowFocus:false})},ft=ia;var ua=()=>{let{print:e}=O();return useMutation({mutationFn:({id:t,report:r,db:o})=>e({id:t,report:r,db:o})})},yt=ua;var pa=()=>{let{removeRows:e}=O();return useMutation({mutationFn:({model:t,ids:r,context:o,service:n,xNode:s})=>e({model:t,ids:r,context:o,service:n,xNode:s})})},gt=pa;var da=()=>{let{getResequence:e}=h();return useMutation({mutationFn:({model:t,resIds:r,context:o,offset:n,xNode:s,service:i})=>e({model:t,ids:r,context:o,offset:n,xNode:s,service:i})})},St=da;var fa=()=>{let{runAction:e}=O();return useMutation({mutationFn:({idAction:t,context:r,service:o,xNode:n,searchParams:s})=>e({idAction:t,context:r,service:o,xNode:n,searchParams:s})})},Ct=fa;var ga=()=>{let{signInSSO:e}=h();return useMutation({mutationFn:({redirect_uri:t,state:r,client_id:o,response_type:n,path:s,scope:i})=>e({redirect_uri:t,state:r,client_id:o,response_type:n,path:s,scope:i})})},vt=ga;var Ca=()=>{let{verify2FA:e}=h();return useMutation({mutationFn:({method:t,with_context:r,code:o,device:n,location:s})=>e({method:t,with_context:r,code:o,device:n,location:s})})},ht=Ca;var ha=()=>{let{get2FAMethods:e}=h();return useMutation({mutationFn:({method:t,with_context:r})=>e({method:t,with_context:r})})},xt=ha;var _a=()=>{let{grantAccess:e}=h();return useMutation({mutationFn:({redirect_uri:t,state:r,client_id:o,scopes:n})=>e({redirect_uri:t,state:r,client_id:o,scopes:n})})},_t=_a;var Ta=()=>{let{removeTotpSetUp:e}=h();return useMutation({mutationFn:({method:t,token:r})=>e({method:t,token:r})})},Pt=Ta;var Aa=()=>{let{requestSetupTotp:e}=h();return useMutation({mutationFn:({method:t,token:r})=>e({method:t,token:r})})},Tt=Aa;var Ea=()=>{let{settingsWebRead2fa:e}=h();return useMutation({mutationFn:({method:t,token:r,kwargs:o,model:n})=>e({method:t,model:n,kwargs:o,token:r})})},bt=Ea;var Fa=()=>{let{verifyTotp:e}=h();return useMutation({mutationFn:({method:t,action_token:r,code:o})=>e({method:t,action_token:r,code:o})})},At=Fa;var La=()=>{let{generateSerialNumber:e}=O();return useMutation({mutationFn:({kwargs:t,context:r,service:o,xNode:n})=>e({kwargs:t,context:r,service:o,xNode:n})})},wt=La;var Ra=({service:e,xNode:t,body:r,queryKey:o=[],enabled:n})=>{let{getNotifications:s}=h();return useQuery({queryKey:o,queryFn:()=>s({body:r,service:e,xNode:t}).then(i=>i),enabled:n,refetchOnWindowFocus:false})},Et=Ra;var Na=()=>{let{getVersion:e}=h();return useMutation({mutationFn:()=>e()})},Gt=Na;var Ua=()=>{let{getWard:e}=h();return useMutation({mutationFn:({service:t,xNode:r,kwargs:o})=>e({service:t,xNode:r,kwargs:o})})},Ft=Ua;var ja=()=>{let{getCity:e}=h();return useMutation({mutationFn:({service:t,xNode:r,ids:o,kwargs:n})=>e({service:t,xNode:r,ids:o,kwargs:n})})},Dt=ja;var Ha=()=>{let{getCountry:e}=h();return useMutation({mutationFn:({service:t,xNode:r,ids:o,kwargs:n})=>e({service:t,xNode:r,ids:o,kwargs:n})})},Lt=Ha;var Ba=()=>{let{getPartnerTitle:e}=h();return useMutation({mutationFn:({service:t,xNode:r,kwargs:o,withContext:n})=>e({service:t,xNode:r,kwargs:o,withContext:n})})},Mt=Ba;var Wa=(e,t,r,o)=>{let{readGroup:n}=J();return useQuery({queryKey:[r],queryFn:()=>n({service:e,xNode:t,body:r}),refetchOnWindowFocus:false,enabled:o})},Rt=Wa;var Ka=(e,t,r,o,n,s,i)=>{let{getDataChart:u}=J();return useQuery({queryKey:[i],queryFn:()=>u({service:e,xNode:t,body:r,path:n,method:s}),refetchOnWindowFocus:false,enabled:o})},Ot=Ka;var za=()=>{let{addEntity:e}=f();return useMutation({mutationFn:e})},Nt=za;var Ya=()=>{let e=f();return useMutation({mutationFn:e.getASession})},qt=Ya;var eu=()=>{let e=f();return useMutation({mutationFn:e.changeOrderPreparationState})},Ut=eu;var ou=()=>{let e=f();return useMutation({mutationFn:e.checkPayment})},kt=ou;var nu=()=>{let e=f();return useMutation({mutationFn:e.createEInvoice})},jt=nu;var iu=()=>{let e=f();return useMutation({mutationFn:e.createEntity})},It=iu;var uu=()=>{let e=f();return useMutation({mutationFn:e.createPosConfig})},Ht=uu;var pu=()=>{let e=f();return useMutation({mutationFn:e.createSession})},Vt=pu;var du=()=>{let e=f();return useMutation({mutationFn:e.deleteEntity})},Bt=du;var fu=()=>{let e=f();return useMutation({mutationFn:e.generatePaymentQRInfo})},Xt=fu;var gu=()=>{let e=f();return useMutation({mutationFn:e.getCurrentUser})},Wt=gu;var Cu=()=>{let e=f();return useMutation({mutationFn:e.getList})},Qt=Cu;var hu=()=>{let e=f();return useMutation({mutationFn:e.getOrderLine})},Kt=hu;var _u=()=>{let e=f();return useMutation({mutationFn:e.getPinCode})},$t=_u;var Tu=()=>{let e=f();return useMutation({mutationFn:e.getPOS})},zt=Tu;var Au=()=>{let e=f();return useMutation({mutationFn:e.getPreparationDisplayData})},Jt=Au;var Eu=()=>{let e=f();return useMutation({mutationFn:e.getProductImage})},Yt=Eu;var Fu=()=>{let e=f();return useMutation({mutationFn:e.handleCloseSession})},Zt=Fu;var Lu=()=>{let e=f();return useMutation({mutationFn:e.handleClosingDetailSession})},eo=Lu;var Ru=()=>{let e=f();return useMutation({mutationFn:e.handleClosingSession})},to=Ru;var Nu=()=>{let e=f(),{env:t}=w();return useMutation({mutationFn:t.isSupaMode?e.loadDataPosSessionSupabase:e.loadDataPosSession})},oo=Nu;var Uu=()=>{let e=f();return useMutation({mutationFn:e.manageOnChange})},ro=Uu;var ju=()=>{let e=f();return useMutation({mutationFn:e.manageSession})},no=ju;var Hu=()=>{let e=f();return useMutation({mutationFn:e.processOrder})},so=Hu;var Bu=()=>{let e=f();return useMutation({mutationFn:e.savePinCode})},io=Bu;var Wu=()=>{let e=f();return useMutation({mutationFn:e.searchJournal})},ao=Wu;var Ku=()=>{let e=f();return useMutation({mutationFn:e.updateClosedSession})},uo=Ku;var zu=()=>{let e=f();return useMutation({mutationFn:e.updateEntity})},co=zu;var Yu=()=>{let e=f();return useMutation({mutationFn:e.updateOrderStatus})},po=Yu;var ec=()=>{let e=f();return useMutation({mutationFn:e.completeCurrentStage})},mo=ec;var To=()=>{let e=L();return {createOrderSupabase:useCallback(async r=>{if(!e)return console.error("Supabase client not initialized"),null;try{let{data:o,error:n}=await e.from("orders").insert({name:r.pos_reference,date_order:new Date().toISOString(),session_id:r.session_id,pos_reference:r.pos_reference,amount_tax:r.amount_tax,amount_total:r.amount_total,amount_paid:r.amount_paid,amount_return:r.amount_return,table_id:r.table_id,partner_id:r.partner_id}).select("id, pos_reference").single();return n?(console.error("Error creating order:",n),null):[[o.id,o.pos_reference]]}catch(o){return console.error("Error creating order:",o),null}},[e])}};var rc=()=>{let{addFloorSupabase:e}=Z();return useMutation({mutationFn:e})},lo=rc;var sc=()=>{let{addTableSupabase:e}=ee();return useMutation({mutationFn:e})},fo=sc;var ac=()=>{let{updateFloorSupabase:e}=te();return useMutation({mutationFn:e})},yo=ac;var cc=()=>{let{updateTableSupabase:e}=oe();return useMutation({mutationFn:e})},go=cc;var mc=()=>{let{deleteFloorSupabase:e}=re();return useMutation({mutationFn:e})},So=mc;var lc=()=>{let{deleteTableSupabase:e}=ne();return useMutation({mutationFn:e})},Co=lc;var yc=()=>{let{createOrderSupabase:e}=To();return useMutation({mutationFn:e})},vo=yc;var vr=createContext(null),hr=({children:e})=>{let t={useForgotPassword:ae,useForgotPasswordSSO:ue,useGetProvider:ce,useIsValidToken:pe,useLoginCredential:me,useLoginSocial:de,useLoginSupa:le,useResetPassword:fe,useResetPasswordSSO:ye,useUpdatePassword:ge,useLogout:Se,useGetAccessByCode:Ce,useValidateActionToken:ve,useGetTenantMapping:he,useGetToken:xe};return jsx(vr.Provider,{value:t,children:e})},xr=()=>{let e=useContext(vr);if(!e)throw new Error("useAuthService must be used within an AuthServiceProvider");return e};var _r=createContext(null),Pr=({children:e})=>{let t={useGetCompanyInfo:_e,useGetCurrentCompany:Pe,useGetListCompany:Te};return jsx(_r.Provider,{value:t,children:e})},Tr=()=>{let e=useContext(_r);if(!e)throw new Error("useCompanyService must be used within a CompanyServiceProvider");return e};var br=createContext(null),Ar=({children:e})=>{let t={useExecuteImport:De,useExportExcel:be,useGetFieldExport:Ae,useGetFileExcel:we,useParsePreview:Ee,useUploadFileExcel:Ge,useUploadIdFile:Fe};return jsx(br.Provider,{value:t,children:e})},wr=()=>{let e=useContext(br);if(!e)throw new Error("useExcelService must be used within an ExcelServiceProvider");return e};var Er=createContext(null),Gr=({children:e})=>{let t={useChangeStatus:Le,useDeleteComment:Me,useGetComment:Re,useGetExternalTabs:Ie,useGetFormView:Oe,useGetThreadData:ke,useGetThreadMessages:je,useSendComment:Ne,useUploadFile:Ue,useUploadImage:qe};return jsx(Er.Provider,{value:t,children:e})},Fr=()=>{let e=useContext(Er);if(!e)throw new Error("useFormService must be used within a FormServiceProvider");return e};var Dr=createContext(null),Lr=({children:e})=>{let t={useDelete:He,useGetAll:Ve,useGetConversionRate:Be,useGetCurrency:Xe,useGetDetail:We,useGetFieldOnChange:Qe,useGetListMyBankAccount:Ke,useModel:$e,useOdooDataTransform:ze,useOnChangeForm:Je,useSave:Ye};return jsx(Dr.Provider,{value:t,children:e})},Mr=()=>{let e=useContext(Dr);if(!e)throw new Error("useModelService must be used within a ModelServiceProvider");return e};var Rr=createContext(null),Or=({children:e})=>{let t={useGetProfile:Ze,useGetUser:et,useSwitchLocale:tt};return jsx(Rr.Provider,{value:t,children:e})},Nr=()=>{let e=useContext(Rr);if(!e)throw new Error("useUserService must be used within a UserServiceProvider");return e};var qr=createContext(null),Ur=({children:e})=>{let t={useButton:ot,useDuplicateRecord:rt,useGet2FAMethods:xt,useGetActionDetail:nt,useGetCalendar:st,useGetGroups:it,useGetListData:at,useGetMenu:ut,useGetPrintReport:ct,useGetProGressBar:pt,useGetResequence:St,useGetSelection:mt,useGetView:dt,useLoadAction:lt,useLoadMessage:ft,usePrint:yt,useRemoveRow:gt,useRunAction:Ct,useSignInSSO:vt,useVerify2FA:ht,useGrantAccess:_t,useRemoveTotpSetup:Pt,useRequestSetupTotp:Tt,useSettingsWebRead2fa:bt,useVerifyTotp:At,useGenSerialNumber:wt,useGetNotifications:Et,useGetVersion:Gt,useGetWard:Ft,useGetCity:Dt,useGetCountry:Lt,useGetPartnerTitle:Mt};return jsx(qr.Provider,{value:t,children:e})},kr=()=>{let e=useContext(qr);if(!e)throw new Error("useViewService must be used within a ViewServiceProvider");return e};var jr=createContext(null),Ir=({children:e})=>{let t={useGetDataChart:Ot,useReadGroup:Rt};return jsx(jr.Provider,{value:t,children:e})},Hr=()=>{let e=useContext(jr);if(!e)throw new Error("useChartService must be used within a ChartServiceProvider");return e};var Vr=createContext(null),Br=({children:e})=>{let t={useAddEntity:Nt,useAddFloor:lo,useAddTable:fo,useChangeOrderPreparationState:Ut,useCheckPayment:kt,useCompleteCurrentStage:mo,useCreateEInvoice:jt,useCreateEntity:It,useCreateOrder:vo,useCreatePosConfig:Ht,useCreateSession:Vt,useDeleteEntity:Bt,useDeleteFloor:So,useDeleteTable:Co,useGeneratePaymentQrInfo:Xt,useGetASession:qt,useGetCurrentUser:Wt,useGetList:Qt,useGetOrderLine:Kt,useGetPinCode:$t,useGetPos:zt,useGetPreparationDisplayData:Jt,useGetProductImage:Yt,useHandleCloseSession:Zt,useHandleClosingDetailSession:eo,useHandleClosingSession:to,useLoadDataPosSession:oo,useManageOnChange:ro,useManageSession:no,useProcessOrder:so,useSavePinCode:io,useSearchJournal:ao,useUpdateClosedSession:uo,useUpdateEntity:co,useUpdateFloor:yo,useUpdateOrderStatus:po,useUpdateTable:go};return jsx(Vr.Provider,{value:t,children:e})},Xr=()=>{let e=useContext(Vr);if(!e)throw new Error("usePosService must be used within a PosServiceProvider");return e};var Wr=({children:e})=>{let{env:t}=w();function r(){let o=t?.defaultCompany;if(!o)return;o.display_name&&(document.title=o.display_name),document.documentElement.style.setProperty("--primary",o?.primary_color),document.documentElement.style.setProperty("--secondary",o?.secondary_color);let n=document.querySelector('meta[name="description"]');if(n)n.setAttribute("content",o.display_name);else {let i=document.createElement("meta");i.name="description",i.content=o.display_name,document.head.appendChild(i);}let s=(i,u)=>{let m=document.querySelector(`link[rel="${i}"]`);m?m.href=u:(m=document.createElement("link"),m.rel=i,m.href=u,document.head.appendChild(m));};if(o.logo){s("icon",o.logo),s("apple-touch-icon",o.logo);let i=document.querySelector('link[href="favicon.ico"]');i&&i.remove();}}return useEffect(()=>{r();},[t?.defaultCompany]),jsx(Fragment,{children:e})};export{Te as $,Tt as $a,A,Je as Aa,Jt as Ab,$ as B,Ye as Ba,Yt as Bb,q as C,Ze as Ca,Zt as Cb,D,et as Da,eo as Db,z as E,tt as Ea,to as Eb,E as F,ot as Fa,oo as Fb,W as G,rt as Ga,ro as Gb,h as H,nt as Ha,no as Hb,J as I,st as Ia,so as Ib,f as J,it as Ja,io as Jb,ae as K,at as Ka,ao as Kb,ue as L,ut as La,uo as Lb,ce as M,ct as Ma,co as Mb,pe as N,pt as Na,po as Nb,me as O,mt as Oa,mo as Ob,de as P,dt as Pa,lo as Pb,le as Q,lt as Qa,fo as Qb,fe as R,ft as Ra,yo as Rb,ye as S,yt as Sa,go as Sb,ge as T,gt as Ta,So as Tb,Se as U,St as Ua,Co as Ub,Ce as V,Ct as Va,vo as Vb,ve as W,vt as Wa,he as X,ht as Xa,xe as Y,xt as Ya,_e as Z,_t as Za,Pe as _,Pt as _a,ie as a,be as aa,bt as ab,Lo as b,Ae as ba,At as bb,Ro as c,we as ca,wt as cb,w as d,Ee as da,Et as db,hr as e,Ge as ea,Gt as eb,xr as f,Fe as fa,Ft as fb,Pr as g,De as ga,Dt as gb,Tr as h,Le as ha,Lt as hb,Ar as i,Me as ia,Mt as ib,wr as j,Re as ja,Rt as jb,Gr as k,Oe as ka,Ot as kb,Fr as l,Ne as la,Nt as lb,Lr as m,qe as ma,qt as mb,Mr as n,Ue as na,Ut as nb,Or as o,ke as oa,kt as ob,Nr as p,je as pa,jt as pb,Ur as q,Ie as qa,It as qb,kr as r,He as ra,Ht as rb,Ir as s,Ve as sa,Vt as sb,Hr as t,Be as ta,Bt as tb,Br as u,Xe as ua,Xt as ub,Xr as v,We as va,Wt as vb,Wr as w,Qe as wa,Qt as wb,No as x,Ke as xa,Kt as xb,qo as y,$e as ya,$t as yb,O as z,ze as za,zt as zb};
|