blob: e7eb61d32d5f6f6ef12cc247cbeff3181070126d [file] [log] [blame]
// Copyright 2021 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// Command static compiles TypeScript files into minified
// JavaScript files and creates linked sourcemaps.
package main
import (
"bytes"
"flag"
"io/ioutil"
"log"
"golang.org/x/pkgsite/internal/static"
)
var check = flag.Bool("check", false, "disable write mode and check that output files are valid")
func main() {
flag.Parse()
staticPath := "content/static"
result, err := static.Build(static.Config{StaticPath: staticPath, Write: !*check})
if err != nil {
log.Fatal(err)
}
if *check {
for _, v := range result.OutputFiles {
file, err := ioutil.ReadFile(v.Path)
if err != nil {
log.Fatal(err)
}
if !bytes.Equal(file, v.Contents) {
log.Fatalf("static files out of sync, try running 'go run ./devtools/cmd/static'")
}
}
}
}