1
0
Fork 0
mirror of synced 2024-06-26 18:20:43 +12:00

more fixes and update

This commit is contained in:
Damodar Lohani 2022-02-11 03:19:30 +00:00
parent d16457a104
commit 7865644168

View file

@ -225,8 +225,11 @@
<div <div
id="upload-modal" style="position: absolute; right:0; bottom: 0; background: white;z-index: 9999;"> id="upload-modal" style="position: absolute; right:0; bottom: 0; background: white;z-index: 9999;">
<template x-data x-if="$store.uploader.files.length > 0"> <template x-data x-if="$store.uploader.files.length > 0">
<template x-data x-for="file in $store.uploader.files"> <template x-data x-for="file in $store.uploader.files" :key="file.id">
<p x-text="file.name"></p> <p>
<span x-text="file.progress"></span>
<span x-text="file.name"></span>
</p>
</template> </template>
</template> </template>
</div> </div>
@ -234,44 +237,55 @@
document.addEventListener('alpine:init', () => { document.addEventListener('alpine:init', () => {
Alpine.store('uploader', { Alpine.store('uploader', {
files: [], files: [],
addFile(file){ addFile(file) {
this.files.push(file); this.files.push(file);
console.log(this.files); },
updateFile(id, file) {
const files = this.files.map((oldFile) => file.id == oldFile.id ? file : oldFile);
this.files = [
...files
]
}, },
async uploadFile(target) { async uploadFile(target) {
const formData = new FormData(target); const formData = new FormData(target);
const sdk = window.ls.container.get('sdk'); const sdk = window.ls.container.get('sdk');
const file = formData.get('file'); const file = formData.get('file');
this.files.push({ const fileId = formData.get('fileId');
const id = fileId === 'unique()' ? new Date().getTime().toString() : fileId;
let read = formData.get('read');
if(read) {
read = JSON.parse(read);
}
let write = formData.get('write');
if(write) {
write = JSON.parse(wirte);
}
this.addFile({
name: file.name, name: file.name,
progress: 0, progress: 0,
completed: false, completed: false,
failed: false, failed: false,
}); });
let read = formData.get('read');
if(read) {
read = JSON.parse(read);
}
let write = formData.get('write');
if(write) {
write = JSON.parse(wirte);
}
const response = await sdk.storage.createFile( const response = await sdk.storage.createFile(
formData.get('bucketId'), formData.get('bucketId'),
formData.get('fileId'), fileId,
formData.get('file'), file,
read, read,
write, write,
(progress) => { (progress) => {
this.files.push({ console.log("progress", progress);
this.updateFile(id, {
id: id,
name: file.name, name: file.name,
progress: progress, progress: progress,
completed: false, completed: false,
failed: false failed: false
}); });
}); });
this.files.push({ this.updateFile(id,{
id: response.$id,
name: response.name, name: response.name,
progress: 100, progress: 100,
completed: true, completed: true,