Files
machartaa_admin_dist/dist/assets/supabaseTableQuery-8ab5665d.js
T
2026-08-11 18:06:14 +03:30

2 lines
2.2 KiB
JavaScript

function d(t,r){const{field:n,op:i,value:e}=r;if(!n||(e==null||e==="")&&i!=="nn")return t;switch(i){case"eq":return t.eq(n,e);case"neq":case"not":return t.neq(n,e);case"gt":return t.gt(n,e);case"lt":return t.lt(n,e);case"gte":return t.gte(n,e);case"lte":return t.lte(n,e);case"has":case"like":return t.ilike(n,`%${e}%`);case"sw":return t.ilike(n,`${e}%`);case"ew":return t.ilike(n,`%${e}`);case"in":{const a=Array.isArray(e)?e:String(e).split(",").map(s=>s.trim()).filter(Boolean);return a.length?t.in(n,a):t}case"nn":return t.not(n,"is",null);default:return t}}function S(t,r,n){return r!=null&&r.length&&r.forEach(i=>{i.field&&(n&&!n.has(i.field)||(t=d(t,i)))}),t}function _(t,r,n="-created_at",i){const{sort:e,order:a}=r;if(e!=null&&e.key&&(!i||i.includes(e.key)))return t.order(e.key,{ascending:e.order==="asc"});if(a){const c=a.replace(/^[-+]/,"");if(!i||i.includes(c))return t.order(c,{ascending:!a.startsWith("-")})}const s=n.replace(/^[-+]/,"");return t.order(s,{ascending:!n.startsWith("-")})}function k(t,r,n){if(n&&r){const i=(r-1)*n;return t.range(i,i+n-1)}return t}function $(t,r,n,i){const e=n.page||1,a=n.limit||20,s=(e-1)*a;return{rows:(t||[]).map((o,p)=>({...i?i(o):o,index:s+p})),total:r??0,query:{...n,page:e,limit:a,total:r??0}}}function u(t){const r=t.trim();if(!r)return"%";const n=`%${r.replace(/\\/g,"\\\\").replace(/%/g,"\\%").replace(/_/g,"\\_")}%`;return/[,.()*]/.test(n)?`"${n.replace(/"/g,'""')}"`:n}const f=["name","phone","first_name","last_name"],l=40;function m(t){return[...new Set(t)]}function g(t,r,n=[],i="user_id"){const e=u(r),a=t.map(c=>`${c}.ilike.${e}`),s=m(n).slice(0,l);return s.length&&a.push(`${i}.in.(${s.join(",")})`),a.join(",")}async function I(t,r,n=f,i=l){const e=r.trim();if(!e)return[];const a=u(e),{data:s,error:c}=await t.from("users").select("id").or(n.map(o=>`${o}.ilike.${a}`).join(",")).limit(i);if(c)throw c;return(s||[]).map(o=>o.id)}function E(t,r,n=[],i=[],e="user_id"){return t.or(g(n,r,i,e))}export{l as MAX_USER_IDS_IN_SEARCH,E as applyEmbeddedUserSearch,d as applySupabaseFilter,S as applySupabaseFilters,k as applySupabasePagination,_ as applySupabaseSort,g as buildIlikeOrFilter,I as fetchMatchingUserIds,$ as formatTableResult,u as toPostgrestIlikeTerm};