From 900fe7fd6c8e96c2b7c54d25fac50c47bc57d8db Mon Sep 17 00:00:00 2001 From: Samuel Wang Date: Mon, 25 Mar 2024 02:38:30 +0100 Subject: [PATCH] fix: fix macos demos not found issue --- src/Renderer/Interface/FilesIO.fs | 10 +++++----- src/Renderer/UI/TopMenuView.fs | 7 +++++-- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/src/Renderer/Interface/FilesIO.fs b/src/Renderer/Interface/FilesIO.fs index cdc2c4463..96873aeb7 100644 --- a/src/Renderer/Interface/FilesIO.fs +++ b/src/Renderer/Interface/FilesIO.fs @@ -42,11 +42,11 @@ let staticDir() = /// on MacOs we think it should be ../Resources/static /// we hope staticDir will give this? let isMac = Node.Api.``process``.platform = Node.Base.Darwin - if productionBuild && not isMac then - "./resources/static" - elif productionBuild && isMac then - "./Resources/static" - else + if productionBuild && not isMac then + "./resources/static" + elif productionBuild && isMac then + path.join [|__dirname; ".."; ".."; "static"|] + else staticDirFromStatic() /// absolute path to repo directory ./static diff --git a/src/Renderer/UI/TopMenuView.fs b/src/Renderer/UI/TopMenuView.fs index ec84be5aa..b253c6750 100644 --- a/src/Renderer/UI/TopMenuView.fs +++ b/src/Renderer/UI/TopMenuView.fs @@ -351,11 +351,14 @@ let private openProject model dispatch = /// load demo project into Issie executables let loadDemoProject model dispatch basename = warnAppWidth dispatch (fun _ -> - let newDir = "./demos/" + basename + let isMac = Node.Api.``process``.platform = Node.Base.Darwin + let homeDir = if isMac then pathJoin [|FilesIO.staticDir(); ".."; ".."|] else "." + + let newDir = homeDir + "/demos/" + basename let sourceDir = FilesIO.staticDir() + "/demos/" + basename printf "%s" $"loading demo {sourceDir} into {newDir}" - ensureDirectory "./demos/" + ensureDirectory (homeDir + "/demos/") ensureDirectory newDir readFilesFromDirectory newDir