aboutsummaryrefslogtreecommitdiff
path: root/completions/spec.yaml
blob: c3391c19275da38ce3813ccdfd115235f3bdd108 (plain) (blame)
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
---
name: bun
appspec: { version: "0.001" }
plugins: [-Meta]
title: A tool for installing and managing Python packages

options:
  - version|V                  --Show version and exit
  - name: cwd
    type: string
    summary: "Change directory"

# subcommands:
#   bun:

subcommands:
  run:
    summary: Run a script or package bin
    parameters:
      - name: script
        multiple: false
        completion:
          command_string: >
            SHELL=zsh bun getcompletes r

    options:
      - silent --Don't echo the command

  create:
    summary: Create a new project
    subcommands:
      next:
        summary: "Next.js app"
        parameters:
          - name: file
            multiple: false
            type: file
            required: true

      react:
        summary: "React app"
        parameters:
          - name: file
            multiple: false
            type: file
            required: true

  bun:
    summary: Generate a bundle
    parameters:
      - name: file
        multiple: true
        type: file
        required: false
    options:
      - name: use
        type: string
        summary: Use a framework, e.g. "next"

  upgrade:
    summary: Upgrade to the latest version of bun

  dev:
    summary: Start a dev server
    options:
      - name: bunfile
        type: string
        summary: "Use a specific .bun file (default: node_modules.bun)"

      - name: origin
        type: string
        summary: "Rewrite import paths to start from a different url. Default: http://localhost:3000"

      - name: u
        type: string
        summary: "Rewrite import paths to start from a different url. Default: http://localhost:3000"

      - name: server-bunfile
        type: string
        summary: "Use a specific .bun file for SSR in bun dev (default: node_modules.server.bun)"
      - name: extension-order
        type: string
        summary: "defaults to: .tsx,.ts,.jsx,.js,.json"
      - name: "jsx-runtime"
        type: string
        enum: ["automatic", "classic"]
        summary: 'JSX runtime to use. Defaults to "automatic"'
      - name: main-fields
        type: string
        summary: Main fields to lookup in package.json. Defaults to --platform dependent
      - disable-react-fast-refresh --Disable React Fast Refresh
      - disable-hmr                --Disable Hot Module Reloading
      - &jsx_factory name: jsx-factory
        type: string
        summary: "Changes the function called when compiling JSX elements using the classic JSX runtime"
      - &jsx_fragment name: jsx-fragment
        type: string
        summary: "Changes the function called when compiling JSX fragments"
      - &jsx_import_source name: jsx-import-source
        type: string
        summary: 'Declares the module specifier to be used for importing the jsx and jsxs factory functions. Default: "react"'
      - &port name: port
        type: int
        summary: Port number
  install:
    summary: Install packages from package.json
    options:
      - name: registry
        type: string
        summary: "Change default registry (default: $BUN_CONFIG_REGISTRY || $npm_config_registry)"
      - name: token
        type: string
        summary: "Authentication token used for npm registry requests (default: $npm_config_token)"
      - y -- "Write a yarn.lock file (yarn v1)"
      - yarn -- "Write a yarn.lock file (yarn v1)"
      - production -- "Don't install devDependencies"
      - p -- "Don't install devDependencies"
      - frozen-lockfile -- "Disallow changes to lockfile"
      - no-save --
      - dry-run -- "Don't install anything"
      - force -- "Always request the latest versions from the registry & reinstall all dependenices"
      - name: lockfile
        type: string
        summary: "Store & load a lockfile at a specific filepath"
      - name: cache-dir
        type: string
        summary: "Store & load cached data from a specific directory path"
      - no-cache -- "Ignore manifest cache entirely"
      - silent -- "Don't output anything"
      - verbose -- "Excessively verbose logging"
      - name: cwd
        type: string
        summary: "Set a specific cwd"
      - name: backend
        summary: "Platform-specific optimizations for installing dependencies"
        type: string
        enum: ["clonefile", "copyfile", "hardlink", "clonefile_each_dir"]
      - name: link-native-bins
        summary: 'Link "bin" from a matching platform-specific dependency instead. Default: esbuild, turbo'
  add:
    summary: Add a dependency to package.json
    options:
      - name: registry
        type: string
        summary: "Change default registry (default: $BUN_CONFIG_REGISTRY || $npm_config_registry)"
      - name: token
        type: string
        summary: "Authentication token used for npm registry requests (default: $npm_config_token)"
      - y -- "Write a yarn.lock file (yarn v1)"
      - yarn -- "Write a yarn.lock file (yarn v1)"
      - production -- "Don't install devDependencies"
      - optional -- "Add dependency to optionalDependencies"
      - development -- "Add dependency to devDependencies"
      - d -- "Add dependency to devDependencies"
      - p -- "Don't install devDependencies"
      - frozen-lockfile -- "Disallow changes to lockfile"
      - no-save --
      - dry-run -- "Don't install anything"
      - force -- "Always request the latest versions from the registry & reinstall all dependenices"
      - no-cache -- "Ignore manifest cache entirely"
      - silent -- "Don't output anything"
      - verbose -- "Excessively verbose logging"
      - name: lockfile
        type: string
        summary: "Store & load a lockfile at a specific filepath"
      - name: cache-dir
        type: string
        summary: "Store & load cached data from a specific directory path"

      - name: cwd
        type: string
        summary: "Set a specific cwd"
      - name: backend
        summary: "Platform-specific optimizations for installing dependencies"
        type: string
        enum: ["clonefile", "copyfile", "hardlink", "clonefile_each_dir"]
      - name: link-native-bins
        summary: 'Link "bin" from a matching platform-specific dependency instead. Default: esbuild, turbo'
    parameters:
      - name: package
        multiple: true
        type: string
        required: true
  remove:
    summary: Remove a dependency from package.json
    options:
      - name: registry
        type: string
        summary: "Change default registry (default: $BUN_CONFIG_REGISTRY || $npm_config_registry)"
      - name: token
        type: string
        summary: "Authentication token used for npm registry requests (default: $npm_config_token)"
      - y -- "Write a yarn.lock file (yarn v1)"
      - yarn -- "Write a yarn.lock file (yarn v1)"
      - production -- "Don't install devDependencies"
      - p -- "Don't install devDependencies"
      - frozen-lockfile -- "Disallow changes to lockfile"
      - no-save --
      - dry-run -- "Don't install anything"
      - force -- "Always request the latest versions from the registry & reinstall all dependenices"
      - name: lockfile
        type: string
        summary: "Store & load a lockfile at a specific filepath"
      - name: cache-dir
        type: string
        summary: "Store & load cached data from a specific directory path"
      - no-cache -- "Ignore manifest cache entirely"
      - silent -- "Don't output anything"
      - verbose -- "Excessively verbose logging"
      - name: cwd
        type: string
        summary: "Set a specific cwd"
      - name: backend
        summary: "Platform-specific optimizations for installing dependencies"
        type: string
        enum: ["clonefile", "copyfile", "hardlink", "clonefile_each_dir"]
      - name: link-native-bins
        summary: 'Link "bin" from a matching platform-specific dependency instead. Default: esbuild, turbo'
    parameters:
      - name: package
        multiple: true
        type: string
        required: true

parameters:
  - name: sasdasdds
    completion:
      command_string: >
        SHELL=zsh bun getcompletes r

# vim:et:sts=2:sws=2:sw=2:foldmethod=indent