42 lines
1.1 KiB
FSharp
42 lines
1.1 KiB
FSharp
#load "./.paket/load/net9.0/Build/build.group.fsx"
|
|
|
|
open Fake.Core
|
|
open Fake.DotNet
|
|
open Fake.JavaScript
|
|
|
|
System.Environment.GetCommandLineArgs()
|
|
|> Array.toList
|
|
|> Context.FakeExecutionContext.Create false "build.fsx"
|
|
|> Context.RuntimeContext.Fake
|
|
|> Context.setExecutionContext
|
|
|
|
Target.create "dev" (fun _ ->
|
|
let fable = async {
|
|
DotNet.exec (fun o -> o) "fable" "watch -o build -s" |> ignore
|
|
}
|
|
let vite = async {
|
|
Npm.run "dev" (fun p -> p)
|
|
}
|
|
Async.Parallel [fable; vite]
|
|
|> Async.RunSynchronously
|
|
|> ignore
|
|
)
|
|
|
|
Target.create "build" (fun _ ->
|
|
DotNet.exec (fun o -> o) "fable" "-o build --noCache --optimize" |> ignore
|
|
Npm.run "build" (fun p -> p)
|
|
)
|
|
|
|
Target.create "clean" (fun _ ->
|
|
DotNet.exec (fun o -> o)"fable" "clean -o build" |> ignore
|
|
DotNet.exec (fun o -> o) "clean" |> ignore
|
|
Fake.IO.Directory.delete "node_modules"
|
|
Fake.IO.Directory.delete "bin"
|
|
Fake.IO.Directory.delete "build"
|
|
Fake.IO.Directory.delete "dist"
|
|
Fake.IO.Directory.delete "obj"
|
|
Fake.IO.Directory.delete "paket-files"
|
|
Fake.IO.Directory.delete ".paket"
|
|
)
|
|
|
|
Target.runOrDefaultWithArguments "dev"
|