plugins

package
v0.4.7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 3, 2021 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var EnvPlugin = api.Plugin{
	Name: "env",
	Setup: func(build api.PluginBuild) {
		build.OnResolve(api.OnResolveOptions{Filter: `^env$`},
			func(args api.OnResolveArgs) (api.OnResolveResult, error) {
				return api.OnResolveResult{
					Path:      args.Path,
					Namespace: "env-ns",
				}, nil
			})
		build.OnLoad(api.OnLoadOptions{Filter: `.*`, Namespace: "env-ns"},
			func(args api.OnLoadArgs) (api.OnLoadResult, error) {
				mappings := make(map[string]string)
				for _, item := range os.Environ() {
					if equals := strings.IndexByte(item, '='); equals != -1 {
						mappings[item[:equals]] = item[equals+1:]
					}
				}
				bytes, err := json.Marshal(mappings)
				if err != nil {
					return api.OnLoadResult{}, err
				}
				contents := string(bytes)
				return api.OnLoadResult{
					Contents: &contents,
					Loader:   api.LoaderJSON,
				}, nil
			})
	},
}

EnvPlugin reads environment variable

View Source
var FolderResolutionPlugin = api.Plugin{
	Name: "folder_resolution",
	Setup: func(build api.PluginBuild) {
		build.OnResolve(api.OnResolveOptions{Filter: `^src\/`},
			func(args api.OnResolveArgs) (api.OnResolveResult, error) {
				pwd, err := os.Getwd()
				ext := path.Ext(args.Path)
				if ext == "" {
					ext = ".js"
				} else {
					ext = ""
				}
				return api.OnResolveResult{
					Path: path.Join(pwd, args.Path) + ext,
				}, err
			})
		build.OnResolve(api.OnResolveOptions{Filter: `.*`},
			func(args api.OnResolveArgs) (api.OnResolveResult, error) {
				info, err := os.Stat(path.Join(args.ResolveDir, args.Path))
				if !os.IsNotExist(err) && err != nil {
					return api.OnResolveResult{}, err
				}
				if info != nil && info.IsDir() && path.Ext(args.Path) == "" {
					return api.OnResolveResult{
						Path: path.Join(args.ResolveDir, args.Path, path.Base(args.Path)+".js"),
					}, nil
				}
				return api.OnResolveResult{}, nil
			})
	},
}

EnvPlugin reads environment variable

Functions

This section is empty.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL