commit
2edb311995
5 changed files with 19 additions and 16 deletions
|
|
@ -23,7 +23,7 @@ var BuildCmd = &cobra.Command{
|
|||
Long: L("Build the template"),
|
||||
Run: func(cmd *cobra.Command, args []string) {
|
||||
if len(args) < 2 {
|
||||
fmt.Fprintln(os.Stderr, color.RedString(L("yao cui watch <sui> <template> [data]")))
|
||||
fmt.Fprintln(os.Stderr, color.RedString(L("yao cui build <sui> <template> [data]")))
|
||||
return
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -68,16 +68,16 @@ var WatchCmd = &cobra.Command{
|
|||
}
|
||||
sui.WithSid(sid)
|
||||
|
||||
tmpl, err := sui.GetTemplate(template)
|
||||
if err != nil {
|
||||
fmt.Fprintln(os.Stderr, color.RedString(err.Error()))
|
||||
return
|
||||
}
|
||||
exitSignal := make(chan os.Signal, 1)
|
||||
signal.Notify(exitSignal, os.Interrupt, syscall.SIGTERM, syscall.SIGQUIT)
|
||||
watchDone := make(chan uint8, 1)
|
||||
|
||||
// -
|
||||
tmpl, err := sui.GetTemplate(template)
|
||||
if err != nil {
|
||||
fmt.Fprintln(os.Stderr, color.RedString(err.Error()))
|
||||
return
|
||||
}
|
||||
root := filepath.Join(cfg.DataRoot, tmpl.GetRoot())
|
||||
publicRoot, err := sui.PublicRootWithSid(sid)
|
||||
assetRoot := filepath.Join(publicRoot, "assets")
|
||||
|
|
@ -89,9 +89,15 @@ var WatchCmd = &cobra.Command{
|
|||
go watch(root, func(event, name string) {
|
||||
if event == "WRITE" || event == "CREATE" || event == "RENAME" {
|
||||
// @Todo build single page and sync single asset file to public
|
||||
|
||||
fmt.Printf(color.WhiteString("Building... "))
|
||||
err := tmpl.Build(&core.BuildOption{SSR: true, AssetRoot: assetRoot})
|
||||
|
||||
tmpl, err := sui.GetTemplate(template)
|
||||
if err != nil {
|
||||
fmt.Fprintln(os.Stderr, color.RedString(err.Error()))
|
||||
return
|
||||
}
|
||||
|
||||
err = tmpl.Build(&core.BuildOption{SSR: true, AssetRoot: assetRoot})
|
||||
if err != nil {
|
||||
fmt.Fprint(os.Stderr, color.RedString(fmt.Sprintf("Failed: %s\n", err.Error())))
|
||||
return
|
||||
|
|
|
|||
2
go.mod
2
go.mod
|
|
@ -4,12 +4,12 @@ go 1.20
|
|||
|
||||
require (
|
||||
github.com/PuerkitoBio/goquery v1.8.1
|
||||
github.com/antonmedv/expr v1.15.4
|
||||
github.com/blang/semver v3.5.1+incompatible
|
||||
github.com/caarlos0/env/v6 v6.10.1
|
||||
github.com/dchest/captcha v1.0.0
|
||||
github.com/elazarl/go-bindata-assetfs v1.0.1
|
||||
github.com/evanw/esbuild v0.19.5
|
||||
github.com/expr-lang/expr v1.15.8
|
||||
github.com/fatih/color v1.16.0
|
||||
github.com/fsnotify/fsnotify v1.7.0
|
||||
github.com/gin-gonic/gin v1.9.1
|
||||
|
|
|
|||
4
go.sum
4
go.sum
|
|
@ -5,8 +5,6 @@ github.com/TylerBrock/colorjson v0.0.0-20200706003622-8a50f05110d2/go.mod h1:VSw
|
|||
github.com/andybalholm/cascadia v1.3.1/go.mod h1:R4bJ1UQfqADjvDa4P6HZHLh/3OxWWEqc0Sk8XGwHqvA=
|
||||
github.com/andybalholm/cascadia v1.3.2 h1:3Xi6Dw5lHF15JtdcmAHD3i1+T8plmv7BQ/nsViSLyss=
|
||||
github.com/andybalholm/cascadia v1.3.2/go.mod h1:7gtRlve5FxPPgIgX36uWBX58OdBsSS6lUvCFb+h7KvU=
|
||||
github.com/antonmedv/expr v1.15.4 h1:CrNads8WDnDVJNWt/FeUINBO+vDNjurEwT7SoQN132o=
|
||||
github.com/antonmedv/expr v1.15.4/go.mod h1:0E/6TxnOlRNp81GMzX9QfDPAmHo2Phg00y4JUv1ihsE=
|
||||
github.com/blang/semver v3.5.1+incompatible h1:cQNTCjp13qL8KC3Nbxr/y2Bqb63oX6wdnnjpJbkM4JQ=
|
||||
github.com/blang/semver v3.5.1+incompatible/go.mod h1:kRBLl5iJ+tD4TcOOxsy/0fnwebNt5EWlYSAyrTnjyyk=
|
||||
github.com/blang/semver/v4 v4.0.0 h1:1PFHFE6yCCTv8C1TeyNNarDzntLi7wMI5i/pzqYIsAM=
|
||||
|
|
@ -41,6 +39,8 @@ github.com/elazarl/go-bindata-assetfs v1.0.1 h1:m0kkaHRKEu7tUIUFVwhGGGYClXvyl4RE
|
|||
github.com/elazarl/go-bindata-assetfs v1.0.1/go.mod h1:v+YaWX3bdea5J/mo8dSETolEo7R71Vk1u8bnjau5yw4=
|
||||
github.com/evanw/esbuild v0.19.5 h1:9ildZqajUJzDAwNf9MyQsLh2RdDRKTq3kcyyzhE39us=
|
||||
github.com/evanw/esbuild v0.19.5/go.mod h1:D2vIQZqV/vIf/VRHtViaUtViZmG7o+kKmlBfVQuRi48=
|
||||
github.com/expr-lang/expr v1.15.8 h1:FL8+d3rSSP4tmK9o+vKfSMqqpGL8n15pEPiHcnBpxoI=
|
||||
github.com/expr-lang/expr v1.15.8/go.mod h1:uCkhfG+x7fcZ5A5sXHKuQ07jGZRl6J0FCAaf2k4PtVQ=
|
||||
github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk=
|
||||
github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM=
|
||||
github.com/fatih/color v1.16.0/go.mod h1:fL2Sau1YI5c0pdGEVCbKQbLXB6edEj1ZgiY4NijnWvE=
|
||||
|
|
|
|||
|
|
@ -5,9 +5,8 @@ import (
|
|||
"regexp"
|
||||
"strings"
|
||||
|
||||
"github.com/antonmedv/expr"
|
||||
"github.com/antonmedv/expr/ast"
|
||||
"github.com/antonmedv/expr/vm"
|
||||
"github.com/expr-lang/expr"
|
||||
"github.com/expr-lang/expr/vm"
|
||||
"github.com/yaoapp/gou/process"
|
||||
"github.com/yaoapp/kun/log"
|
||||
)
|
||||
|
|
@ -18,8 +17,6 @@ var propRe = regexp.MustCompile(`\[\{([^}]+)\}\]`)
|
|||
// Data data for the template
|
||||
type Data map[string]interface{}
|
||||
|
||||
var functions = map[string]*ast.Function{}
|
||||
|
||||
var options = []expr.Option{
|
||||
expr.Function("P_", _process),
|
||||
expr.AllowUndefinedVariables(),
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue