-
Notifications
You must be signed in to change notification settings - Fork 1
/
dpm.ts
43 lines (42 loc) · 1.62 KB
/
dpm.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
// Copyright © 2024 Dpm Land. All Rights Reserved.
import { Command, CompletionsCommand } from 'mods/deps.ts';
import { DESCRIPTION, VERSION } from 'mods/info.ts';
import { AboutCommand } from 'cmd/about.ts';
import { DocsCommand } from 'cmd/docs.ts';
import { InitCommand } from 'cmd/init.ts';
import { InstallCommand } from 'cmd/install.ts';
import { ToolsCommand } from 'cmd/tools.ts';
import { UninstallCommand } from 'cmd/uninstall.ts';
import { UpdateCommand } from 'cmd/update.ts';
import { TaskCommand } from 'cmd/task.ts';
import { UpgradeCommand } from 'cmd/upgrade.ts';
import { ExecCommand } from 'cmd/exec.ts';
import { TemplateCommand } from 'cmd/template.ts';
import { PublishCommand } from 'cmd/publish.ts';
import { BundlerCommand } from 'cmd/bundler.ts';
// Make the CLI!
await new Command()
.name('dpm')
.example(
'Start a new Project',
'mkdir my_project && cd my_project && dpm init -A',
)
.example('Install a dependency', 'dpm install draco dlog2')
.example('Uninstall a dependency', 'dpm uninstall draco dlog2')
.version(`${VERSION.substring(1)}`)
.description(DESCRIPTION)
.command('about', AboutCommand)
.command('docs', DocsCommand)
.command('init', InitCommand)
.command('publish', PublishCommand)
.command('uninstall', UninstallCommand)
.command('install', InstallCommand)
.command('tools', ToolsCommand)
.command('task', TaskCommand)
.command('update', UpdateCommand)
.command('template', TemplateCommand)
.command('upgrade', UpgradeCommand)
.command('exec', ExecCommand)
.command('bundle', BundlerCommand)
.command('completions', new CompletionsCommand())
.parse(Deno.args);