PageSourceSearch

https://voxnobile.be/assets/media-D2MTNN38.js

js voxnobile.be collected 2026-10-09 22:04:54 UTC 3,437 bytes, 1 lines download raw bytes

1import{t as e}from"./client-RDblUBeI.js";var t=`media`;async function n(){let{data:t,error:n}=await e.from(`media`).select(`*`).order(`created_at`,{ascending:!1});if(n)throw n;return t??[]}function r(e){if(e.mime_type?.startsWith(`video/`))return!0;let t=e.file_name?.split(`.`).pop()?.toLowerCase()??``;return[`mp4`,`webm`,`mov`,`m4v`,`ogv`].includes(t)}function i(e){return/youtube\.com|youtu\.be|vimeo\.com|\.(mp4|webm|mov|m4v|ogv)(\?|$)/i.test(e)}async function a(){let[t,n,a,o]=await Promise.all([e.from(`media`).select(`*`).eq(`show_in_gallery`,!0).eq(`is_published`,!0).order(`sort_order`).order(`created_at`,{ascending:!1}),e.from(`news_posts`).select(`id,title,image_url,video_url,post_date,created_at,media_copyright,media_description`).eq(`is_published`,!0).eq(`show_in_gallery`,!0).eq(`visibility`,`public`).order(`post_date`,{ascending:!1}),e.from(`member_posts`).select(`id,title,image_url,video_url,published_at,media_copyright,media_description`).eq(`is_published`,!0).eq(`show_in_gallery`,!0).order(`published_at`,{ascending:!1}),e.from(`community_posts`).select(`id,body,image_url,video_url,created_at,is_hidden,media_copyright,media_description`).eq(`show_in_gallery`,!0).eq(`is_hidden`,!1).order(`created_at`,{ascending:!1})]),s=[];for(let e of t.data??[]){let t=l(e.file_url),n=r(e);s.push({key:`media-${e.id}`,imageUrl:n?null:t,videoUrl:n?t:null,caption:e.title||e.alt_text||``,description:e.description??null,copyright:e.copyright??null,createdAt:e.created_at??new Date().toISOString()})}for(let e of n.data??[])s.push({key:`news-${e.id}`,imageUrl:e.image_url?l(e.image_url):null,videoUrl:e.video_url,caption:e.title,description:e.media_description??null,copyright:e.media_copyright??null,createdAt:e.post_date||e.created_at});for(let e of a.data??[])s.push({key:`member-${e.id}`,imageUrl:e.image_url?l(e.image_url):null,videoUrl:e.video_url,caption:e.title,description:e.media_description??null,copyright:e.media_copyright??null,createdAt:e.published_at});for(let e of o.data??[])e.video_url&&i(e.video_url),s.push({key:`community-${e.id}`,imageUrl:e.image_url,videoUrl:e.video_url,caption:(e.body||``).slice(0,80),description:e.media_description??null,copyright:e.media_copyright??null,createdAt:e.created_at});return s.filter(e=>e.imageUrl||e.videoUrl).sort((e,t)=>t.createdAt<e.createdAt?-1:1)}async function o(n,r){let{error:i}=await e.from(`media`).delete().eq(`id`,n);if(i)throw i;r&&await e.storage.from(t).remove([r])}function s(e){try{let n=new URL(e),r=`/storage/v1/object/public/${t}/`;return n.pathname.startsWith(r)?decodeURIComponent(n.pathname.slice(r.length)):null}catch{return null}}async function c(n,r={}){let i=n.name.split(`.`).pop()?.toLowerCase()||`jpg`,a=`${crypto.randomUUID()}.${i}`,{error:o}=await e.storage.from(t).upload(a,n,{cacheControl:`31536000`,upsert:!1,contentType:n.type});if(o)throw o;let{data:s}=e.storage.from(t).getPublicUrl(a),{data:c,error:l}=await e.from(`media`).insert({title:r.title||n.name.replace(/\.[^.]+$/,``),file_url:s.publicUrl,file_name:n.name,mime_type:n.type,size_bytes:n.size,alt_text:r.alt_text||null,tags:r.tags||[]}).select(`*`).single();if(l)throw l;return c}function l(e,t){let n=s(e);if(!n)return e;let r=new URLSearchParams;t?.w&&r.set(`w`,String(t.w)),t?.h&&r.set(`h`,String(t.h)),t?.q&&r.set(`q`,String(t.q));let i=r.toString();return`/api/public/media/${encodeURIComponent(n)}${i?`?${i}`:``}`}export{s as a,l as i,n,r as o,a as r,c as s,o as t};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.