91 lines
2.2 KiB
JavaScript
91 lines
2.2 KiB
JavaScript
|
|
|
|
export const useSupabaseSelect = async (relation,select = '*', sortColumn = null, ascending = true) => {
|
|
const supabase = useSupabaseClient()
|
|
const dataStore = useDataStore()
|
|
let data = null
|
|
|
|
|
|
if(sortColumn !== null ) {
|
|
data = (await supabase
|
|
.from(relation)
|
|
.select(select)
|
|
.eq("tenant", dataStore.currentTenant)
|
|
.order(sortColumn, {ascending: ascending})).data
|
|
} else {
|
|
data = (await supabase
|
|
.from(relation)
|
|
.select(select)
|
|
.eq("tenant", dataStore.currentTenant)).data
|
|
}
|
|
|
|
return data
|
|
}
|
|
|
|
export const useSupabaseSelectDocuments = async (select = '*', sortColumn = null, folderPath = "_") => {
|
|
const supabase = useSupabaseClient()
|
|
const dataStore = useDataStore()
|
|
let data = null
|
|
|
|
|
|
if(sortColumn !== null ) {
|
|
data = (await supabase
|
|
.from("documents")
|
|
.select(select)
|
|
.eq("tenant", dataStore.currentTenant)
|
|
.order(sortColumn, {ascending: true})).data
|
|
} else {
|
|
data = (await supabase
|
|
.from("documents")
|
|
.select(select)
|
|
.eq("tenant", dataStore.currentTenant)).data
|
|
|
|
}
|
|
|
|
if(data.length > 0){
|
|
let paths = []
|
|
data.forEach(doc => {
|
|
paths.push(doc.path)
|
|
})
|
|
|
|
const {data: supabaseData,error} = await supabase.storage.from('files').createSignedUrls(paths,3600)
|
|
|
|
data = data.map((doc,index) => {
|
|
|
|
return {
|
|
...doc,
|
|
url: supabaseData[index].signedUrl
|
|
}
|
|
})
|
|
|
|
|
|
}
|
|
|
|
//console.log(data)
|
|
|
|
return data
|
|
}
|
|
|
|
export const useSupabaseSelectSingle = async (relation,idToEq,select = '*' ) => {
|
|
const supabase = useSupabaseClient()
|
|
const dataStore = useDataStore()
|
|
let data = null
|
|
|
|
|
|
if(idToEq !== null) {
|
|
data = (await supabase
|
|
.from(relation)
|
|
.select(select)
|
|
.eq("tenant", dataStore.currentTenant)
|
|
.eq("id",idToEq)
|
|
.single()).data
|
|
} else {
|
|
data = (await supabase
|
|
.from(relation)
|
|
.select(select)
|
|
.eq("tenant", dataStore.currentTenant)
|
|
.single()).data
|
|
}
|
|
|
|
return data
|
|
} |