refactor(commands): separate commands and its core into two folders (#32)
- I think it would be better if one for commands only, one for the spec handling core logic so people won't be confused by the core logic inside the commands folder (cleaner I guess) - Regen docs
This commit is contained in:
+17
-17
@@ -1,21 +1,21 @@
|
||||
package js
|
||||
|
||||
import (
|
||||
"github.com/versenilvis/iris/commands/core"
|
||||
"github.com/versenilvis/iris/spec"
|
||||
)
|
||||
|
||||
func init() {
|
||||
core.Register(&core.Spec{
|
||||
spec.Register(&spec.Spec{
|
||||
Name: "bun",
|
||||
Description: "bun js runtime",
|
||||
Subcommands: []core.Subcommand{
|
||||
{Name: "install", Description: "install packages", Options: []core.Option{
|
||||
Subcommands: []spec.Subcommand{
|
||||
{Name: "install", Description: "install packages", Options: []spec.Option{
|
||||
{Name: "--frozen-lockfile", Description: "no lockfile update"},
|
||||
{Name: "--production", Description: "production only"},
|
||||
{Name: "--no-save", Description: "don't update package.json"},
|
||||
{Name: "--dry-run", Description: "print what would be installed"},
|
||||
}},
|
||||
{Name: "add", Description: "add package", Options: []core.Option{
|
||||
{Name: "add", Description: "add package", Options: []spec.Option{
|
||||
{Name: "-d", Description: "dev dependency"},
|
||||
{Name: "--dev", Description: "dev dependency (long form)"},
|
||||
{Name: "--optional", Description: "optional dependency"},
|
||||
@@ -24,17 +24,17 @@ func init() {
|
||||
{Name: "--exact", Description: "exact version"},
|
||||
{Name: "--no-save", Description: "don't update package.json"},
|
||||
}},
|
||||
{Name: "remove", Description: "remove package", Options: []core.Option{
|
||||
{Name: "remove", Description: "remove package", Options: []spec.Option{
|
||||
{Name: "-g", Description: "remove global package"},
|
||||
}},
|
||||
{Name: "run", Description: "run script", Generator: NpmScriptGenerator, Options: []core.Option{
|
||||
{Name: "run", Description: "run script", Generator: NpmScriptGenerator, Options: []spec.Option{
|
||||
{Name: "--silent", Description: "suppress output"},
|
||||
{Name: "--bun", Description: "force bun runtime"},
|
||||
{Name: "--watch", Description: "watch mode"},
|
||||
{Name: "--hot", Description: "hot reload"},
|
||||
{Name: "--smol", Description: "reduce memory usage"},
|
||||
}},
|
||||
{Name: "build", Description: "bundle files", Generator: core.FileGenerator(".ts", ".tsx", ".js", ".jsx"), Options: []core.Option{
|
||||
{Name: "build", Description: "bundle files", Generator: spec.FileGenerator(".ts", ".tsx", ".js", ".jsx"), Options: []spec.Option{
|
||||
{Name: "--outdir", Description: "output directory"},
|
||||
{Name: "--outfile", Description: "output file"},
|
||||
{Name: "--minify", Description: "enable all minification"},
|
||||
@@ -54,7 +54,7 @@ func init() {
|
||||
{Name: "--loader", Description: "set file loader"},
|
||||
{Name: "--public-path", Description: "prefix for public assets"},
|
||||
}},
|
||||
{Name: "test", Description: "run tests", Options: []core.Option{
|
||||
{Name: "test", Description: "run tests", Options: []spec.Option{
|
||||
{Name: "--watch", Description: "watch mode"},
|
||||
{Name: "-t", Description: "filter by test name"},
|
||||
{Name: "--coverage", Description: "collect coverage"},
|
||||
@@ -65,20 +65,20 @@ func init() {
|
||||
{Name: "--todo", Description: "show todo tests"},
|
||||
{Name: "--reporter", Description: "test reporter (default/junit/tap)"},
|
||||
}},
|
||||
{Name: "x", Description: "execute package (bunx)", Options: []core.Option{
|
||||
{Name: "x", Description: "execute package (bunx)", Options: []spec.Option{
|
||||
{Name: "--bun", Description: "force bun runtime"},
|
||||
{Name: "--silent", Description: "suppress output"},
|
||||
}},
|
||||
{Name: "outdated", Description: "check outdated packages"},
|
||||
{Name: "patch", Description: "patch a package", Options: []core.Option{
|
||||
{Name: "patch", Description: "patch a package", Options: []spec.Option{
|
||||
{Name: "--commit", Description: "commit the patch"},
|
||||
}},
|
||||
{Name: "publish", Description: "publish package to npm", Options: []core.Option{
|
||||
{Name: "publish", Description: "publish package to npm", Options: []spec.Option{
|
||||
{Name: "--dry-run", Description: "simulate publish"},
|
||||
{Name: "--tag", Description: "dist-tag"},
|
||||
{Name: "--access", Description: "public or restricted"},
|
||||
}},
|
||||
{Name: "init", Description: "create new project", Options: []core.Option{
|
||||
{Name: "init", Description: "create new project", Options: []spec.Option{
|
||||
{Name: "-y", Description: "skip prompts"},
|
||||
}},
|
||||
{Name: "create", Description: "create from template"},
|
||||
@@ -86,7 +86,7 @@ func init() {
|
||||
{Name: "upgrade", Description: "upgrade bun"},
|
||||
{Name: "link", Description: "link package"},
|
||||
{Name: "unlink", Description: "unlink package"},
|
||||
{Name: "pm", Description: "package manager helpers", Subcommands: []core.Subcommand{
|
||||
{Name: "pm", Description: "package manager helpers", Subcommands: []spec.Subcommand{
|
||||
{Name: "cache", Description: "show cache path"},
|
||||
{Name: "ls", Description: "list packages"},
|
||||
{Name: "hash", Description: "print lockfile hash"},
|
||||
@@ -95,7 +95,7 @@ func init() {
|
||||
{Name: "untrusted", Description: "show untrusted packages"},
|
||||
}},
|
||||
},
|
||||
Options: []core.Option{
|
||||
Options: []spec.Option{
|
||||
{Name: "--watch", Description: "watch for changes"},
|
||||
{Name: "--hot", Description: "hot module reload"},
|
||||
{Name: "--smol", Description: "reduce memory usage"},
|
||||
@@ -105,10 +105,10 @@ func init() {
|
||||
},
|
||||
})
|
||||
|
||||
core.Register(&core.Spec{
|
||||
spec.Register(&spec.Spec{
|
||||
Name: "bunx",
|
||||
Description: "execute package (bun x)",
|
||||
Options: []core.Option{
|
||||
Options: []spec.Option{
|
||||
{Name: "--bun", Description: "force bun runtime"},
|
||||
{Name: "--silent", Description: "suppress output"},
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user