From d7cedac17118b778ccc588a3d7f1aac0133fd6c5 Mon Sep 17 00:00:00 2001 From: Dennis Postma Date: Sun, 30 Jun 2024 02:04:02 +0200 Subject: [PATCH] asset downloading from server works now --- src/app/events/AssetsDownload.ts | 39 ++++++++++++++++++++++++++++++++ src/app/services/AssetService.ts | 3 +-- 2 files changed, 40 insertions(+), 2 deletions(-) create mode 100644 src/app/events/AssetsDownload.ts diff --git a/src/app/events/AssetsDownload.ts b/src/app/events/AssetsDownload.ts new file mode 100644 index 0000000..67cd10a --- /dev/null +++ b/src/app/events/AssetsDownload.ts @@ -0,0 +1,39 @@ +import { Server } from "socket.io"; +import {TSocket} from "../utilities/Types"; +import fs from "fs"; +import path from "path"; + +type Asset = { + key: string + value: string + type: 'base64' | 'link' +} + +export default function (socket: TSocket, io: Server) { + socket.on('assets:download', async (data: any, callback: (response: string[]) => void) => { + listTiles().then(tiles => { + callback(tiles); + }) + }); +} + +function listTiles(): string[] { + // get root path + const folder = path.join(process.cwd(), 'public', 'tiles'); + + // list the files in the folder + let tiles: string[] = []; + + fs.readdir(folder, (err, files) => { + if (err) { + console.log(err); + return; + } + + files.forEach(file => { + tiles.push(file); + }); + }); + + return tiles; +} \ No newline at end of file diff --git a/src/app/services/AssetService.ts b/src/app/services/AssetService.ts index aafb66b..afbb1e6 100644 --- a/src/app/services/AssetService.ts +++ b/src/app/services/AssetService.ts @@ -2,9 +2,8 @@ class AssetService { static generateTileset() { - - } + } } export default AssetService; \ No newline at end of file