35 lines
618 B
Go
35 lines
618 B
Go
package node
|
|
|
|
import (
|
|
"github.com/gobuffalo/packr/v2"
|
|
"github.com/metrue/fx/bundler"
|
|
)
|
|
|
|
const language = "node"
|
|
|
|
// Node defines node bundler
|
|
type Node struct {
|
|
assets *packr.Box
|
|
}
|
|
|
|
// New a koa bundler
|
|
func New() *Node {
|
|
return &Node{
|
|
assets: packr.New("node", "./assets"),
|
|
}
|
|
}
|
|
|
|
// Scaffold a koa app
|
|
func (k *Node) Scaffold(output string) error {
|
|
return bundler.Restore(k.assets, output)
|
|
}
|
|
|
|
// Bundle a function into a koa project
|
|
func (k *Node) Bundle(output string, fn string, deps ...string) error {
|
|
return bundler.Bundle(k.assets, output, language, fn, deps...)
|
|
}
|
|
|
|
var (
|
|
_ bundler.Bundler = &Node{}
|
|
)
|