get frontend code generating and usable
This commit is contained in:
@ -50,6 +50,9 @@ var iconHomeTemplate string
|
||||
//go:embed templates/vue/IconGear.vue.tmpl
|
||||
var iconGearTemplate string
|
||||
|
||||
//go:embed templates/vue/fetch-rpc.ts.tmpl
|
||||
var fetchRPCTemplate string
|
||||
|
||||
func setupWebapp(name string) error {
|
||||
fmt.Println("Setting up webapp with Vue 3, TypeScript, Vue Router, Pinia, and ESLint with Prettier")
|
||||
cmd := exec.Command("npm", "create", "vue@latest", "--", "--ts", "--router", "--pinia", "--eslint-with-prettier", name)
|
||||
@ -109,6 +112,18 @@ func setupWebapp(name string) error {
|
||||
return fmt.Errorf("error creating layouts directory | %w", err)
|
||||
}
|
||||
|
||||
// make sure "src/services/" exists
|
||||
err = os.Mkdir("src/services", 0755)
|
||||
if err != nil {
|
||||
return fmt.Errorf("error creating services directory | %w", err)
|
||||
}
|
||||
|
||||
// make sure "src/generated/" exists
|
||||
err = os.Mkdir("src/generated", 0755)
|
||||
if err != nil {
|
||||
return fmt.Errorf("error creating generated directory | %w", err)
|
||||
}
|
||||
|
||||
// create a new about view from the aboutViewTemplate
|
||||
err = os.WriteFile("src/views/AboutView.vue", []byte(aboutViewTemplate), 0644)
|
||||
if err != nil {
|
||||
@ -153,6 +168,7 @@ func setupWebapp(name string) error {
|
||||
{iconArrowFromShapeRightTemplate, "src/components/icons/IconArrowFromShapeRight.vue"},
|
||||
{iconHomeTemplate, "src/components/icons/IconHome.vue"},
|
||||
{iconGearTemplate, "src/components/icons/IconGear.vue"},
|
||||
{fetchRPCTemplate, "src/services/fetch-rpc.ts"},
|
||||
}
|
||||
|
||||
for _, srcDest := range straightCopies {
|
||||
@ -162,6 +178,12 @@ func setupWebapp(name string) error {
|
||||
}
|
||||
}
|
||||
|
||||
cmd = exec.Command("npm", "install", "openapi-typescript-codegen", "--save-dev")
|
||||
err = cmd.Run()
|
||||
if err != nil {
|
||||
return fmt.Errorf("error installing openapi-typescript-codegen | %w", err)
|
||||
}
|
||||
|
||||
fmt.Println("Exiting the new directory")
|
||||
err = os.Chdir("..")
|
||||
if err != nil {
|
||||
|
Reference in New Issue
Block a user