Skip to content

Commit 57da0e3

Browse files
committed
Show items as basic datatable, not fancy
1 parent 2798132 commit 57da0e3

File tree

4 files changed

+84
-13
lines changed

4 files changed

+84
-13
lines changed

package-lock.json

Lines changed: 40 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
"lint": "prettier --check ."
1313
},
1414
"devDependencies": {
15+
"@flowbite-svelte-plugins/datatable": "^0.4.1",
1516
"@sveltejs/adapter-auto": "^6.1.0",
1617
"@sveltejs/adapter-static": "^3.0.10",
1718
"@sveltejs/kit": "^2.43.2",

src/app.css

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,3 +38,20 @@
3838
display: none;
3939
}
4040
}
41+
42+
@source "../node_modules/simple-datatables/dist";
43+
@source "../node_modules/@flowbite-svelte-plugins/datatable/dist";
44+
45+
.datatable-pagination .datatable-active a,
46+
.datatable-pagination .datatable-active a:focus,
47+
.datatable-pagination .datatable-active a:hover,
48+
.datatable-pagination .datatable-active button,
49+
.datatable-pagination .datatable-active button:focus,
50+
.datatable-pagination .datatable-active button:hover {
51+
background-color: #ffe4de;
52+
cursor: default;
53+
}
54+
55+
.datatable-wrapper .datatable-table tbody tr.selected {
56+
background-color: #fff1ee !important;
57+
}

src/routes/+page.svelte

Lines changed: 26 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@
1010
Helper,
1111
Label,
1212
Fileupload,
13-
Textarea
13+
Textarea,
14+
Table
1415
} from 'flowbite-svelte';
1516
import { ArrowUpRightFromSquareOutline, MoonOutline, SunOutline } from 'flowbite-svelte-icons';
1617
import { ZipReader, BlobReader } from '@zip.js/zip.js';
@@ -20,34 +21,43 @@
2021
let files: FileList | null = $state(null);
2122
2223
let reader;
23-
let fileSizeString;
24-
let entriesAll;
25-
let entriesFiltered;
24+
let allFiles;
25+
let textureFiles;
2626
let filteredBlocksText = $state('');
2727
2828
function handleOnChange(event: Event) {
29-
console.log(files[0]);
29+
// console.log(files[0]);
3030
loadFile(files[0]);
3131
}
3232
33+
function formatFilesForTable(files) {
34+
return files.map((file) => ({ filename: file.filename }));
35+
}
36+
37+
let items = $state([]);
38+
3339
async function loadFile(file) {
3440
reader = await new ZipReader(new BlobReader(file));
3541
// fileSizeString = `${Math.floor(reader.reader.size / 1e6)} MB`;
36-
entriesAll = await reader.getEntries();
42+
allFiles = await reader.getEntries();
43+
44+
// console.log(allFiles);
3745
38-
console.log(entriesAll);
46+
textureFiles = allFiles.filter(filterTextures);
47+
// let totalTextures = textureFiles.length;
48+
textureFiles = textureFiles.filter(filterBlocks);
49+
// let totalBlocks = textureFiles.length;
3950
40-
entriesFiltered = entriesAll.filter(filterTextures);
41-
let totalTextures = entriesFiltered.length;
42-
entriesFiltered = entriesFiltered.filter(filterBlocks);
43-
let totalBlocks = entriesFiltered.length;
51+
// console.log(textureFiles);
4452
45-
filteredBlocksText = entriesFiltered
53+
filteredBlocksText = textureFiles
4654
.reduce((accumulator, currentValue) => {
4755
return `${accumulator}${currentValue.filename}\n`;
4856
}, '')
4957
.trim();
5058
59+
items = formatFilesForTable(textureFiles);
60+
5161
// fileInfoElement.innerText = `JAR size: ${fileSizeString}, All textures: ${totalTextures}, Block textures: ${totalBlocks}`;
5262
}
5363
@@ -107,7 +117,6 @@
107117
bind:elementRef={fileuploadRef}
108118
onchange={handleOnChange}
109119
accept=".jar"
110-
clearable
111120
/>
112121
</Card>
113122

@@ -122,5 +131,9 @@
122131
spellcheck="false"
123132
/>
124133
</Card>
134+
135+
<Card class="max-w-xl gap-2 p-4">
136+
<Table {items}></Table>
137+
</Card>
125138
</div>
126139
</div>

0 commit comments

Comments
 (0)