Files
machartaa_admin_dist/dist/assets/buildSupabaseQuery-1daefa6e.js
T
2026-08-15 11:59:58 +03:30

2 lines
3.5 KiB
JavaScript

import{G as y,bz as x}from"./index-ac7066b4.js";import{toPostgrestIlikeTerm as v,buildIlikeOrFilter as E,applySupabaseFilter as T}from"./supabaseTableQuery-8ab5665d.js";const A={storys:["title","sub_title"],challenge:["title","description"],step_challenges:["title"],matchs:["title","description"],competition:["title","description"],users:["name","email","phone"],videos:["title","description"],customers:["name","email","phone"],daily_questions:["question_text","option1_text","option2_text","designer_name"],books:["title","sub_title"],images_book:["title","description"],subscription_plans:["title","description"],products:["title_fa","title","code","sku","description"],brands:["title","description"],collections:["title","description"],discounts:["title","code"],orders:["note","address"],competition_winners:["match_title","match_description","user_name","user_mobile"],choir_registrations:["first_name","last_name","phone","province"],music_macharta_audios:["title","sub_title"],music_macharta_videos:["title"],channel_message:["text"],announcements:["title","description","video_title"],support_tickets:["problem","account_name","account_phone"],support_faqs:["question","answer"]};function b(t,i,e){const r=e.trim();if(!r)return t;if(i==="comments"||i==="channel_message")return t.ilike("text",v(r));const s=A[i]??["title","description"];return t.or(E(s,r))}function f(t,i){return i!=null&&i.length&&i.forEach(e=>{e!=null&&e.field&&(t=T(t,{...e,hidden:!1}))}),t}function S(t,i){const{limit:e,page:r,sort:s,order:u}=i;if(e&&r){const c=(r-1)*e,o=c+e-1;t=t.range(c,o)}if(s!=null&&s.key)t=t.order(s.key,{ascending:s.order==="asc"}),s.key==="sort_order"&&(t=t.order("id",{ascending:!1}));else if(u){const c=u.split(",").map(o=>o.trim()).filter(Boolean);for(const o of c){const a=!o.startsWith("-"),n=o.replace(/^[-+]/,"");t=t.order(n,{ascending:a})}}return t}async function F(t,i){var g,h;const{limit:e,filters:r,page:s,sort:u,order:c,select:o,search:a,excludeIn:n,includeIn:p,withPushSubscription:m}=t;let d=o!=null&&o.length?o.join(","):"*";m&&i==="users"&&(d="*, push_subscriptions!inner(user_id)");let l=y.from(i).select(d,{count:"exact"});a!=null&&a.trim()&&(l=b(l,i,a.trim())),l=f(l,r),(g=p==null?void 0:p.values)!=null&&g.length&&(l=l.in(p.field,p.values)),(h=n==null?void 0:n.values)!=null&&h.length&&(l=l.not(n.field,"in",`(${n.values.join(",")})`)),l=S(l,{limit:e,page:s,sort:u,order:c});const{data:k,error:_,count:w}=await l;return _?(console.error("Supabase query error:",_),null):{data:k,count:w}}async function j(t,i){const{limit:e,filters:r,page:s,sort:u,order:c,select:o,search:a}=t;let n=x.from(i);o!=null&&o.length?n=n.select(o.join(","),{count:"exact"}):n=n.select("*",{count:"exact"}),a!=null&&a.trim()&&(n=b(n,i,a.trim())),n=f(n,r),n=S(n,{limit:e,page:s,sort:u,order:c});const{data:p,error:m,count:d}=await n;return m?(console.error("Supabase query error:",m),null):{data:p,count:d}}async function B(t,i="users"){const e=await F(t,i);if(!e)return{query:{...t,limit:t.limit||10,page:t.page||1,total:0},rows:[]};const r=((t.page||1)-1)*(t.limit||10),s=(e.data||[]).map((u,c)=>({...u,index:r+c}));return{query:{...t,limit:t.limit||10,page:t.page||1,total:e.count},rows:s}}async function C(t,i="users"){const e=await j(t,i);if(!e)return{query:{...t,limit:t.limit||10,page:t.page||1,total:0},rows:[]};const r=t.page||1,s=t.limit||10,u=(r-1)*s,c=(e.data||[]).map((o,a)=>({...o,index:u+a}));return{query:{...t,limit:s,page:r,total:e.count},rows:c}}export{B as TableEngineRequest,C as TableEngineShopRequest,F as buildSupabaseQuery,j as buildSupabaseShopQuery};