@quonfig/cli 0.0.37 → 0.0.38
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +288 -35
- package/dist/commands/activity/deleted.d.ts +7 -0
- package/dist/commands/activity/deleted.js +32 -0
- package/dist/commands/activity/feed.d.ts +10 -0
- package/dist/commands/activity/feed.js +77 -0
- package/dist/commands/activity/history.d.ts +10 -0
- package/dist/commands/activity/history.js +61 -0
- package/dist/commands/activity/restore.d.ts +21 -0
- package/dist/commands/activity/restore.js +113 -0
- package/dist/commands/activity.d.ts +6 -0
- package/dist/commands/activity.js +17 -0
- package/dist/commands/audit-log.d.ts +19 -0
- package/dist/commands/audit-log.js +30 -0
- package/dist/commands/config-schema.d.ts +1 -0
- package/dist/commands/config-schema.js +4 -1
- package/dist/commands/history.d.ts +14 -0
- package/dist/commands/history.js +19 -0
- package/dist/commands/info.js +1 -1
- package/dist/commands/log.d.ts +11 -0
- package/dist/commands/log.js +15 -0
- package/dist/init/schema.js +1 -24
- package/dist/quonfig.js +1 -1
- package/dist/util/activity-lookup.d.ts +25 -0
- package/dist/util/activity-lookup.js +36 -0
- package/dist/verify/validate.d.ts +1 -0
- package/dist/verify/validate.js +3 -2
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/oclif.manifest.json +574 -1
- package/package.json +4 -3
package/README.md
CHANGED
|
@@ -14,7 +14,7 @@ $ npm install -g @quonfig/cli
|
|
|
14
14
|
$ qfg COMMAND
|
|
15
15
|
running command...
|
|
16
16
|
$ qfg (--version)
|
|
17
|
-
@quonfig/cli/0.0.
|
|
17
|
+
@quonfig/cli/0.0.38 linux-x64 node-v24.4.1
|
|
18
18
|
$ qfg --help [COMMAND]
|
|
19
19
|
USAGE
|
|
20
20
|
$ qfg COMMAND
|
|
@@ -25,6 +25,12 @@ USAGE
|
|
|
25
25
|
# Commands
|
|
26
26
|
|
|
27
27
|
<!-- commands -->
|
|
28
|
+
* [`qfg activity`](#qfg-activity)
|
|
29
|
+
* [`qfg activity deleted`](#qfg-activity-deleted)
|
|
30
|
+
* [`qfg activity feed`](#qfg-activity-feed)
|
|
31
|
+
* [`qfg activity history [NAME]`](#qfg-activity-history-name)
|
|
32
|
+
* [`qfg activity restore [NAME]`](#qfg-activity-restore-name)
|
|
33
|
+
* [`qfg audit-log [NAME]`](#qfg-audit-log-name)
|
|
28
34
|
* [`qfg config-schema`](#qfg-config-schema)
|
|
29
35
|
* [`qfg create NAME`](#qfg-create-name)
|
|
30
36
|
* [`qfg delete NAME`](#qfg-delete-name)
|
|
@@ -34,10 +40,12 @@ USAGE
|
|
|
34
40
|
* [`qfg generate`](#qfg-generate)
|
|
35
41
|
* [`qfg generate-new-hex-key`](#qfg-generate-new-hex-key)
|
|
36
42
|
* [`qfg get [NAME]`](#qfg-get-name)
|
|
43
|
+
* [`qfg history NAME`](#qfg-history-name)
|
|
37
44
|
* [`qfg info [NAME]`](#qfg-info-name)
|
|
38
45
|
* [`qfg init [DIRECTORY]`](#qfg-init-directory)
|
|
39
46
|
* [`qfg interactive`](#qfg-interactive)
|
|
40
47
|
* [`qfg list`](#qfg-list)
|
|
48
|
+
* [`qfg log`](#qfg-log)
|
|
41
49
|
* [`qfg log-level NAME`](#qfg-log-level-name)
|
|
42
50
|
* [`qfg login`](#qfg-login)
|
|
43
51
|
* [`qfg logout`](#qfg-logout)
|
|
@@ -64,6 +72,200 @@ USAGE
|
|
|
64
72
|
* [`qfg workspace create SLUG`](#qfg-workspace-create-slug)
|
|
65
73
|
* [`qfg workspace switch [SLUG]`](#qfg-workspace-switch-slug)
|
|
66
74
|
|
|
75
|
+
## `qfg activity`
|
|
76
|
+
|
|
77
|
+
Inspect what changed in the workspace (recent commits, per-config history, deletions).
|
|
78
|
+
|
|
79
|
+
```
|
|
80
|
+
USAGE
|
|
81
|
+
$ qfg activity [--json] [--interactive] [--no-color] [--verbose]
|
|
82
|
+
|
|
83
|
+
GLOBAL FLAGS
|
|
84
|
+
--[no-]interactive Force interactive mode
|
|
85
|
+
--json Format output as json.
|
|
86
|
+
--no-color Do not colorize output
|
|
87
|
+
--verbose Verbose output
|
|
88
|
+
|
|
89
|
+
DESCRIPTION
|
|
90
|
+
Inspect what changed in the workspace (recent commits, per-config history, deletions).
|
|
91
|
+
|
|
92
|
+
EXAMPLES
|
|
93
|
+
$ qfg activity feed
|
|
94
|
+
|
|
95
|
+
$ qfg activity history my.flag
|
|
96
|
+
|
|
97
|
+
$ qfg activity deleted
|
|
98
|
+
|
|
99
|
+
$ qfg activity restore my.flag --yes
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
_See code: [src/commands/activity.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/activity.ts)_
|
|
103
|
+
|
|
104
|
+
## `qfg activity deleted`
|
|
105
|
+
|
|
106
|
+
List configs that were deleted from the workspace and have not been restored.
|
|
107
|
+
|
|
108
|
+
```
|
|
109
|
+
USAGE
|
|
110
|
+
$ qfg activity deleted [--json] [--interactive] [--no-color] [--verbose] [-w <value>]
|
|
111
|
+
|
|
112
|
+
GLOBAL FLAGS
|
|
113
|
+
-w, --workspace=<value> Workspace slug to use (overrides QUONFIG_WORKSPACE env var and saved default)
|
|
114
|
+
--[no-]interactive Force interactive mode
|
|
115
|
+
--json Format output as json.
|
|
116
|
+
--no-color Do not colorize output
|
|
117
|
+
--verbose Verbose output
|
|
118
|
+
|
|
119
|
+
DESCRIPTION
|
|
120
|
+
List configs that were deleted from the workspace and have not been restored.
|
|
121
|
+
|
|
122
|
+
Useful for "did somebody delete X?" — pair with `qfg activity restore NAME`
|
|
123
|
+
to undelete a tombstoned config.
|
|
124
|
+
|
|
125
|
+
EXAMPLES
|
|
126
|
+
$ qfg activity deleted
|
|
127
|
+
|
|
128
|
+
$ qfg activity deleted --json
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
_See code: [src/commands/activity/deleted.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/activity/deleted.ts)_
|
|
132
|
+
|
|
133
|
+
## `qfg activity feed`
|
|
134
|
+
|
|
135
|
+
Recent activity across the workspace, newest first.
|
|
136
|
+
|
|
137
|
+
```
|
|
138
|
+
USAGE
|
|
139
|
+
$ qfg activity feed [--json] [--interactive] [--no-color] [--verbose] [-w <value>] [--limit <value>]
|
|
140
|
+
|
|
141
|
+
FLAGS
|
|
142
|
+
--limit=<value> [default: 30] Maximum number of feed entries (1-100)
|
|
143
|
+
|
|
144
|
+
GLOBAL FLAGS
|
|
145
|
+
-w, --workspace=<value> Workspace slug to use (overrides QUONFIG_WORKSPACE env var and saved default)
|
|
146
|
+
--[no-]interactive Force interactive mode
|
|
147
|
+
--json Format output as json.
|
|
148
|
+
--no-color Do not colorize output
|
|
149
|
+
--verbose Verbose output
|
|
150
|
+
|
|
151
|
+
DESCRIPTION
|
|
152
|
+
Recent activity across the workspace, newest first.
|
|
153
|
+
|
|
154
|
+
Each entry shows who changed which config, the action (created/updated/deleted/restored),
|
|
155
|
+
and the human-readable audit message produced by the server. The server already
|
|
156
|
+
translates JSON diffs into messages — this command does not re-translate.
|
|
157
|
+
|
|
158
|
+
EXAMPLES
|
|
159
|
+
$ qfg activity feed
|
|
160
|
+
|
|
161
|
+
$ qfg activity feed --limit 5
|
|
162
|
+
|
|
163
|
+
$ qfg activity feed --json
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
_See code: [src/commands/activity/feed.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/activity/feed.ts)_
|
|
167
|
+
|
|
168
|
+
## `qfg activity history [NAME]`
|
|
169
|
+
|
|
170
|
+
Per-config audit trail for a flag, config, log-level, segment, or schema.
|
|
171
|
+
|
|
172
|
+
```
|
|
173
|
+
USAGE
|
|
174
|
+
$ qfg activity history [NAME] [--json] [--interactive] [--no-color] [--verbose] [-w <value>]
|
|
175
|
+
|
|
176
|
+
ARGUMENTS
|
|
177
|
+
NAME config/feature-flag/etc. name
|
|
178
|
+
|
|
179
|
+
GLOBAL FLAGS
|
|
180
|
+
-w, --workspace=<value> Workspace slug to use (overrides QUONFIG_WORKSPACE env var and saved default)
|
|
181
|
+
--[no-]interactive Force interactive mode
|
|
182
|
+
--json Format output as json.
|
|
183
|
+
--no-color Do not colorize output
|
|
184
|
+
--verbose Verbose output
|
|
185
|
+
|
|
186
|
+
DESCRIPTION
|
|
187
|
+
Per-config audit trail for a flag, config, log-level, segment, or schema.
|
|
188
|
+
|
|
189
|
+
Resolves NAME against the workspace metadata (no need to specify type) and
|
|
190
|
+
returns the full commit history for that file with audit messages translated
|
|
191
|
+
by the server. Restored entries are rendered distinctly so a recovery doesn't
|
|
192
|
+
look like a fresh create.
|
|
193
|
+
|
|
194
|
+
EXAMPLES
|
|
195
|
+
$ qfg activity history my.flag
|
|
196
|
+
|
|
197
|
+
$ qfg activity history request.timeout --json
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
_See code: [src/commands/activity/history.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/activity/history.ts)_
|
|
201
|
+
|
|
202
|
+
## `qfg activity restore [NAME]`
|
|
203
|
+
|
|
204
|
+
Undelete a config that was previously removed.
|
|
205
|
+
|
|
206
|
+
```
|
|
207
|
+
USAGE
|
|
208
|
+
$ qfg activity restore [NAME] [--json] [--interactive] [--no-color] [--verbose] [-w <value>] [--type
|
|
209
|
+
feature_flag|config|log_level|segment|flag|log-level] [--yes]
|
|
210
|
+
|
|
211
|
+
ARGUMENTS
|
|
212
|
+
NAME config/feature-flag/etc. name
|
|
213
|
+
|
|
214
|
+
FLAGS
|
|
215
|
+
--type=<option> Config type. Optional — inferred from history when omitted.
|
|
216
|
+
<options: feature_flag|config|log_level|segment|flag|log-level>
|
|
217
|
+
--yes Skip the confirmation prompt
|
|
218
|
+
|
|
219
|
+
GLOBAL FLAGS
|
|
220
|
+
-w, --workspace=<value> Workspace slug to use (overrides QUONFIG_WORKSPACE env var and saved default)
|
|
221
|
+
--[no-]interactive Force interactive mode
|
|
222
|
+
--json Format output as json.
|
|
223
|
+
--no-color Do not colorize output
|
|
224
|
+
--verbose Verbose output
|
|
225
|
+
|
|
226
|
+
DESCRIPTION
|
|
227
|
+
Undelete a config that was previously removed.
|
|
228
|
+
|
|
229
|
+
Looks up the most recent deletion for the key (so you see who deleted it and when),
|
|
230
|
+
then asks for confirmation before re-creating the file from the prior content.
|
|
231
|
+
Schemas cannot be restored — use git history instead.
|
|
232
|
+
|
|
233
|
+
EXAMPLES
|
|
234
|
+
$ qfg activity restore my.flag --yes
|
|
235
|
+
|
|
236
|
+
$ qfg activity restore request.timeout --type config --yes
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
_See code: [src/commands/activity/restore.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/activity/restore.ts)_
|
|
240
|
+
|
|
241
|
+
## `qfg audit-log [NAME]`
|
|
242
|
+
|
|
243
|
+
Alias: `qfg audit-log` → `qfg activity feed`; `qfg audit-log NAME` → `qfg activity history NAME`.
|
|
244
|
+
|
|
245
|
+
```
|
|
246
|
+
USAGE
|
|
247
|
+
$ qfg audit-log [NAME...] [--json] [--interactive] [--no-color] [--verbose]
|
|
248
|
+
|
|
249
|
+
ARGUMENTS
|
|
250
|
+
NAME... Optional config key. If present, dispatches to `activity history NAME`; otherwise `activity feed`.
|
|
251
|
+
|
|
252
|
+
GLOBAL FLAGS
|
|
253
|
+
--[no-]interactive Force interactive mode
|
|
254
|
+
--json Format output as json.
|
|
255
|
+
--no-color Do not colorize output
|
|
256
|
+
--verbose Verbose output
|
|
257
|
+
|
|
258
|
+
DESCRIPTION
|
|
259
|
+
Alias: `qfg audit-log` → `qfg activity feed`; `qfg audit-log NAME` → `qfg activity history NAME`.
|
|
260
|
+
|
|
261
|
+
EXAMPLES
|
|
262
|
+
$ qfg audit-log
|
|
263
|
+
|
|
264
|
+
$ qfg audit-log my.flag
|
|
265
|
+
```
|
|
266
|
+
|
|
267
|
+
_See code: [src/commands/audit-log.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/audit-log.ts)_
|
|
268
|
+
|
|
67
269
|
## `qfg config-schema`
|
|
68
270
|
|
|
69
271
|
Print the config file format reference: rules engine, operators, targeting criteria, segments, and weighted rollouts. Use --json-schema for the machine-readable JSON Schema document.
|
|
@@ -91,7 +293,7 @@ EXAMPLES
|
|
|
91
293
|
$ qfg config-schema --json-schema # full JSON Schema document (copy into your editor)
|
|
92
294
|
```
|
|
93
295
|
|
|
94
|
-
_See code: [src/commands/config-schema.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
296
|
+
_See code: [src/commands/config-schema.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/config-schema.ts)_
|
|
95
297
|
|
|
96
298
|
## `qfg create NAME`
|
|
97
299
|
|
|
@@ -176,7 +378,7 @@ EXAMPLES
|
|
|
176
378
|
$ qfg set-rollout my.new.flag --environment production --true-percent 20
|
|
177
379
|
```
|
|
178
380
|
|
|
179
|
-
_See code: [src/commands/create.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
381
|
+
_See code: [src/commands/create.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/create.ts)_
|
|
180
382
|
|
|
181
383
|
## `qfg delete NAME`
|
|
182
384
|
|
|
@@ -222,7 +424,7 @@ EXAMPLES
|
|
|
222
424
|
$ qfg delete my.config --yes
|
|
223
425
|
```
|
|
224
426
|
|
|
225
|
-
_See code: [src/commands/delete.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
427
|
+
_See code: [src/commands/delete.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/delete.ts)_
|
|
226
428
|
|
|
227
429
|
## `qfg flag info [NAME]`
|
|
228
430
|
|
|
@@ -425,7 +627,7 @@ EXAMPLES
|
|
|
425
627
|
$ qfg generate --targets node-ts -o ./dist # combine with targets
|
|
426
628
|
```
|
|
427
629
|
|
|
428
|
-
_See code: [src/commands/generate.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
630
|
+
_See code: [src/commands/generate.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/generate.ts)_
|
|
429
631
|
|
|
430
632
|
## `qfg generate-new-hex-key`
|
|
431
633
|
|
|
@@ -448,7 +650,7 @@ EXAMPLES
|
|
|
448
650
|
$ qfg generate-new-hex-key
|
|
449
651
|
```
|
|
450
652
|
|
|
451
|
-
_See code: [src/commands/generate-new-hex-key.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
653
|
+
_See code: [src/commands/generate-new-hex-key.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/generate-new-hex-key.ts)_
|
|
452
654
|
|
|
453
655
|
## `qfg get [NAME]`
|
|
454
656
|
|
|
@@ -480,7 +682,33 @@ EXAMPLES
|
|
|
480
682
|
$ qfg get my.config.name --environment=production
|
|
481
683
|
```
|
|
482
684
|
|
|
483
|
-
_See code: [src/commands/get.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
685
|
+
_See code: [src/commands/get.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/get.ts)_
|
|
686
|
+
|
|
687
|
+
## `qfg history NAME`
|
|
688
|
+
|
|
689
|
+
Alias: `qfg history NAME` → `qfg activity history NAME`.
|
|
690
|
+
|
|
691
|
+
```
|
|
692
|
+
USAGE
|
|
693
|
+
$ qfg history NAME... [--json] [--interactive] [--no-color] [--verbose]
|
|
694
|
+
|
|
695
|
+
ARGUMENTS
|
|
696
|
+
NAME... Config key to inspect
|
|
697
|
+
|
|
698
|
+
GLOBAL FLAGS
|
|
699
|
+
--[no-]interactive Force interactive mode
|
|
700
|
+
--json Format output as json.
|
|
701
|
+
--no-color Do not colorize output
|
|
702
|
+
--verbose Verbose output
|
|
703
|
+
|
|
704
|
+
DESCRIPTION
|
|
705
|
+
Alias: `qfg history NAME` → `qfg activity history NAME`.
|
|
706
|
+
|
|
707
|
+
EXAMPLES
|
|
708
|
+
$ qfg history my.flag
|
|
709
|
+
```
|
|
710
|
+
|
|
711
|
+
_See code: [src/commands/history.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/history.ts)_
|
|
484
712
|
|
|
485
713
|
## `qfg info [NAME]`
|
|
486
714
|
|
|
@@ -528,7 +756,7 @@ EXAMPLES
|
|
|
528
756
|
$ qfg info my.config.name --exclude-evaluations # skip 24h stats
|
|
529
757
|
```
|
|
530
758
|
|
|
531
|
-
_See code: [src/commands/info.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
759
|
+
_See code: [src/commands/info.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/info.ts)_
|
|
532
760
|
|
|
533
761
|
## `qfg init [DIRECTORY]`
|
|
534
762
|
|
|
@@ -568,7 +796,7 @@ EXAMPLES
|
|
|
568
796
|
$ qfg init --dry-run
|
|
569
797
|
```
|
|
570
798
|
|
|
571
|
-
_See code: [src/commands/init.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
799
|
+
_See code: [src/commands/init.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/init.ts)_
|
|
572
800
|
|
|
573
801
|
## `qfg interactive`
|
|
574
802
|
|
|
@@ -598,7 +826,7 @@ EXAMPLES
|
|
|
598
826
|
$ qfg
|
|
599
827
|
```
|
|
600
828
|
|
|
601
|
-
_See code: [src/commands/interactive.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
829
|
+
_See code: [src/commands/interactive.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/interactive.ts)_
|
|
602
830
|
|
|
603
831
|
## `qfg list`
|
|
604
832
|
|
|
@@ -638,7 +866,32 @@ EXAMPLES
|
|
|
638
866
|
$ qfg list --feature-flags
|
|
639
867
|
```
|
|
640
868
|
|
|
641
|
-
_See code: [src/commands/list.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
869
|
+
_See code: [src/commands/list.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/list.ts)_
|
|
870
|
+
|
|
871
|
+
## `qfg log`
|
|
872
|
+
|
|
873
|
+
Alias: `qfg log` → `qfg activity feed`.
|
|
874
|
+
|
|
875
|
+
```
|
|
876
|
+
USAGE
|
|
877
|
+
$ qfg log [--json] [--interactive] [--no-color] [--verbose]
|
|
878
|
+
|
|
879
|
+
GLOBAL FLAGS
|
|
880
|
+
--[no-]interactive Force interactive mode
|
|
881
|
+
--json Format output as json.
|
|
882
|
+
--no-color Do not colorize output
|
|
883
|
+
--verbose Verbose output
|
|
884
|
+
|
|
885
|
+
DESCRIPTION
|
|
886
|
+
Alias: `qfg log` → `qfg activity feed`.
|
|
887
|
+
|
|
888
|
+
EXAMPLES
|
|
889
|
+
$ qfg log
|
|
890
|
+
|
|
891
|
+
$ qfg log --limit 5
|
|
892
|
+
```
|
|
893
|
+
|
|
894
|
+
_See code: [src/commands/log.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/log.ts)_
|
|
642
895
|
|
|
643
896
|
## `qfg log-level NAME`
|
|
644
897
|
|
|
@@ -703,7 +956,7 @@ EXAMPLES
|
|
|
703
956
|
$ qfg log-level log-level.my-app --target=Chatty --value=INFO --environment=production
|
|
704
957
|
```
|
|
705
958
|
|
|
706
|
-
_See code: [src/commands/log-level.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
959
|
+
_See code: [src/commands/log-level.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/log-level.ts)_
|
|
707
960
|
|
|
708
961
|
## `qfg login`
|
|
709
962
|
|
|
@@ -728,7 +981,7 @@ EXAMPLES
|
|
|
728
981
|
$ qfg login --profile myprofile
|
|
729
982
|
```
|
|
730
983
|
|
|
731
|
-
_See code: [src/commands/login.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
984
|
+
_See code: [src/commands/login.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/login.ts)_
|
|
732
985
|
|
|
733
986
|
## `qfg logout`
|
|
734
987
|
|
|
@@ -751,7 +1004,7 @@ EXAMPLES
|
|
|
751
1004
|
$ qfg logout
|
|
752
1005
|
```
|
|
753
1006
|
|
|
754
|
-
_See code: [src/commands/logout.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
1007
|
+
_See code: [src/commands/logout.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/logout.ts)_
|
|
755
1008
|
|
|
756
1009
|
## `qfg migrate`
|
|
757
1010
|
|
|
@@ -805,7 +1058,7 @@ EXAMPLES
|
|
|
805
1058
|
$ qfg migrate --from launch --api-key $LAUNCH_API_KEY --dir ./quonfig-repo --staging
|
|
806
1059
|
```
|
|
807
1060
|
|
|
808
|
-
_See code: [src/commands/migrate.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
1061
|
+
_See code: [src/commands/migrate.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/migrate.ts)_
|
|
809
1062
|
|
|
810
1063
|
## `qfg migrate doctor`
|
|
811
1064
|
|
|
@@ -843,7 +1096,7 @@ EXAMPLES
|
|
|
843
1096
|
$ qfg migrate doctor --json
|
|
844
1097
|
```
|
|
845
1098
|
|
|
846
|
-
_See code: [src/commands/migrate/doctor.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
1099
|
+
_See code: [src/commands/migrate/doctor.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/migrate/doctor.ts)_
|
|
847
1100
|
|
|
848
1101
|
## `qfg migrate my-code`
|
|
849
1102
|
|
|
@@ -875,7 +1128,7 @@ EXAMPLES
|
|
|
875
1128
|
$ qfg migrate my-code --dry-run
|
|
876
1129
|
```
|
|
877
1130
|
|
|
878
|
-
_See code: [src/commands/migrate/my-code.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
1131
|
+
_See code: [src/commands/migrate/my-code.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/migrate/my-code.ts)_
|
|
879
1132
|
|
|
880
1133
|
## `qfg migrate status`
|
|
881
1134
|
|
|
@@ -906,7 +1159,7 @@ EXAMPLES
|
|
|
906
1159
|
$ qfg migrate status --json
|
|
907
1160
|
```
|
|
908
1161
|
|
|
909
|
-
_See code: [src/commands/migrate/status.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
1162
|
+
_See code: [src/commands/migrate/status.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/migrate/status.ts)_
|
|
910
1163
|
|
|
911
1164
|
## `qfg override [NAME] [VALUE]`
|
|
912
1165
|
|
|
@@ -961,7 +1214,7 @@ EXAMPLES
|
|
|
961
1214
|
$ qfg override my.flag true --env=staging
|
|
962
1215
|
```
|
|
963
1216
|
|
|
964
|
-
_See code: [src/commands/override.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
1217
|
+
_See code: [src/commands/override.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/override.ts)_
|
|
965
1218
|
|
|
966
1219
|
## `qfg pull`
|
|
967
1220
|
|
|
@@ -1008,7 +1261,7 @@ EXAMPLES
|
|
|
1008
1261
|
$ qfg pull # uses QUONFIG_DIR env var
|
|
1009
1262
|
```
|
|
1010
1263
|
|
|
1011
|
-
_See code: [src/commands/pull.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
1264
|
+
_See code: [src/commands/pull.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/pull.ts)_
|
|
1012
1265
|
|
|
1013
1266
|
## `qfg push`
|
|
1014
1267
|
|
|
@@ -1056,7 +1309,7 @@ EXAMPLES
|
|
|
1056
1309
|
$ qfg push --dir ./our-config --yes
|
|
1057
1310
|
```
|
|
1058
1311
|
|
|
1059
|
-
_See code: [src/commands/push.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
1312
|
+
_See code: [src/commands/push.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/push.ts)_
|
|
1060
1313
|
|
|
1061
1314
|
## `qfg schema NAME`
|
|
1062
1315
|
|
|
@@ -1094,7 +1347,7 @@ EXAMPLES
|
|
|
1094
1347
|
$ qfg schema my-schema --set-json-schema=@schemas/my-schema.json --protected
|
|
1095
1348
|
```
|
|
1096
1349
|
|
|
1097
|
-
_See code: [src/commands/schema.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
1350
|
+
_See code: [src/commands/schema.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/schema.ts)_
|
|
1098
1351
|
|
|
1099
1352
|
## `qfg sdk-key`
|
|
1100
1353
|
|
|
@@ -1121,7 +1374,7 @@ EXAMPLES
|
|
|
1121
1374
|
$ qfg sdk-key revoke <key-id>
|
|
1122
1375
|
```
|
|
1123
1376
|
|
|
1124
|
-
_See code: [src/commands/sdk-key.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
1377
|
+
_See code: [src/commands/sdk-key.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/sdk-key.ts)_
|
|
1125
1378
|
|
|
1126
1379
|
## `qfg sdk-key create`
|
|
1127
1380
|
|
|
@@ -1153,7 +1406,7 @@ EXAMPLES
|
|
|
1153
1406
|
$ qfg sdk-key create --environment staging --type browser
|
|
1154
1407
|
```
|
|
1155
1408
|
|
|
1156
|
-
_See code: [src/commands/sdk-key/create.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
1409
|
+
_See code: [src/commands/sdk-key/create.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/sdk-key/create.ts)_
|
|
1157
1410
|
|
|
1158
1411
|
## `qfg sdk-key list`
|
|
1159
1412
|
|
|
@@ -1182,7 +1435,7 @@ EXAMPLES
|
|
|
1182
1435
|
$ qfg sdk-key list --environment production
|
|
1183
1436
|
```
|
|
1184
1437
|
|
|
1185
|
-
_See code: [src/commands/sdk-key/list.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
1438
|
+
_See code: [src/commands/sdk-key/list.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/sdk-key/list.ts)_
|
|
1186
1439
|
|
|
1187
1440
|
## `qfg sdk-key revoke KEYID`
|
|
1188
1441
|
|
|
@@ -1209,7 +1462,7 @@ EXAMPLES
|
|
|
1209
1462
|
$ qfg sdk-key revoke a1b2c3d4-e5f6-7890-abcd-ef1234567890
|
|
1210
1463
|
```
|
|
1211
1464
|
|
|
1212
|
-
_See code: [src/commands/sdk-key/revoke.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
1465
|
+
_See code: [src/commands/sdk-key/revoke.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/sdk-key/revoke.ts)_
|
|
1213
1466
|
|
|
1214
1467
|
## `qfg set-default [NAME]`
|
|
1215
1468
|
|
|
@@ -1280,7 +1533,7 @@ EXAMPLES
|
|
|
1280
1533
|
$ qfg pull && qfg config-schema
|
|
1281
1534
|
```
|
|
1282
1535
|
|
|
1283
|
-
_See code: [src/commands/set-default.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
1536
|
+
_See code: [src/commands/set-default.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/set-default.ts)_
|
|
1284
1537
|
|
|
1285
1538
|
## `qfg set-rollout [NAME]`
|
|
1286
1539
|
|
|
@@ -1357,7 +1610,7 @@ EXAMPLES
|
|
|
1357
1610
|
$ qfg set-rollout my.variant.flag --environment production --weights "a:33,b:33,c:34" --hash-by user.id
|
|
1358
1611
|
```
|
|
1359
1612
|
|
|
1360
|
-
_See code: [src/commands/set-rollout.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
1613
|
+
_See code: [src/commands/set-rollout.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/set-rollout.ts)_
|
|
1361
1614
|
|
|
1362
1615
|
## `qfg sync`
|
|
1363
1616
|
|
|
@@ -1389,7 +1642,7 @@ EXAMPLES
|
|
|
1389
1642
|
$ qfg sync --watch --dir ./our-config --interval 30
|
|
1390
1643
|
```
|
|
1391
1644
|
|
|
1392
|
-
_See code: [src/commands/sync.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
1645
|
+
_See code: [src/commands/sync.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/sync.ts)_
|
|
1393
1646
|
|
|
1394
1647
|
## `qfg toggle [NAME]`
|
|
1395
1648
|
|
|
@@ -1491,7 +1744,7 @@ EXAMPLES
|
|
|
1491
1744
|
$ qfg verify --json
|
|
1492
1745
|
```
|
|
1493
1746
|
|
|
1494
|
-
_See code: [src/commands/verify.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
1747
|
+
_See code: [src/commands/verify.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/verify.ts)_
|
|
1495
1748
|
|
|
1496
1749
|
## `qfg whoami`
|
|
1497
1750
|
|
|
@@ -1514,7 +1767,7 @@ EXAMPLES
|
|
|
1514
1767
|
$ qfg whoami
|
|
1515
1768
|
```
|
|
1516
1769
|
|
|
1517
|
-
_See code: [src/commands/whoami.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
1770
|
+
_See code: [src/commands/whoami.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/whoami.ts)_
|
|
1518
1771
|
|
|
1519
1772
|
## `qfg workspace`
|
|
1520
1773
|
|
|
@@ -1537,7 +1790,7 @@ EXAMPLES
|
|
|
1537
1790
|
$ qfg workspace
|
|
1538
1791
|
```
|
|
1539
1792
|
|
|
1540
|
-
_See code: [src/commands/workspace.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
1793
|
+
_See code: [src/commands/workspace.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/workspace.ts)_
|
|
1541
1794
|
|
|
1542
1795
|
## `qfg workspace bootstrap`
|
|
1543
1796
|
|
|
@@ -1570,7 +1823,7 @@ EXAMPLES
|
|
|
1570
1823
|
$ qfg workspace bootstrap --dir ./our-config --skip-validate
|
|
1571
1824
|
```
|
|
1572
1825
|
|
|
1573
|
-
_See code: [src/commands/workspace/bootstrap.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
1826
|
+
_See code: [src/commands/workspace/bootstrap.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/workspace/bootstrap.ts)_
|
|
1574
1827
|
|
|
1575
1828
|
## `qfg workspace create SLUG`
|
|
1576
1829
|
|
|
@@ -1604,7 +1857,7 @@ EXAMPLES
|
|
|
1604
1857
|
$ qfg workspace create my-team --org 11111111-1111-1111-1111-111111111111
|
|
1605
1858
|
```
|
|
1606
1859
|
|
|
1607
|
-
_See code: [src/commands/workspace/create.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
1860
|
+
_See code: [src/commands/workspace/create.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/workspace/create.ts)_
|
|
1608
1861
|
|
|
1609
1862
|
## `qfg workspace switch [SLUG]`
|
|
1610
1863
|
|
|
@@ -1632,7 +1885,7 @@ EXAMPLES
|
|
|
1632
1885
|
$ qfg workspace switch acme/production
|
|
1633
1886
|
```
|
|
1634
1887
|
|
|
1635
|
-
_See code: [src/commands/workspace/switch.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
1888
|
+
_See code: [src/commands/workspace/switch.ts](https://github.com/quonfig/cli/blob/v0.0.38/src/commands/workspace/switch.ts)_
|
|
1636
1889
|
<!-- commandsstop -->
|
|
1637
1890
|
|
|
1638
1891
|
## Local Development
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { APICommand } from '../../index.js';
|
|
2
|
+
export default class ActivityDeleted extends APICommand {
|
|
3
|
+
static description = `List configs that were deleted from the workspace and have not been restored.
|
|
4
|
+
|
|
5
|
+
Useful for "did somebody delete X?" — pair with \`qfg activity restore NAME\`
|
|
6
|
+
to undelete a tombstoned config.`;
|
|
7
|
+
static examples = ['<%= config.bin %> <%= command.id %>', '<%= config.bin %> <%= command.id %> --json'];
|
|
8
|
+
async run() {
|
|
9
|
+
const request = await this.apiClient.post('/api/v1/activity/getDeletedItems', {
|
|
10
|
+
workspaceId: this.workspaceId,
|
|
11
|
+
});
|
|
12
|
+
if (!request.ok) {
|
|
13
|
+
const errorMsg = request.error?.error || `Failed to fetch deleted items: ${request.status}`;
|
|
14
|
+
return this.err(errorMsg, { serverError: request.error });
|
|
15
|
+
}
|
|
16
|
+
const items = (Array.isArray(request.json) ? request.json : []);
|
|
17
|
+
if (items.length === 0) {
|
|
18
|
+
this.log('No deleted items in this workspace.');
|
|
19
|
+
return { items: [] };
|
|
20
|
+
}
|
|
21
|
+
const maxTypeLen = Math.max(4, ...items.map((i) => i.configType.length));
|
|
22
|
+
const maxKeyLen = Math.max(3, ...items.map((i) => i.configKey.length));
|
|
23
|
+
const maxByLen = Math.max(2, ...items.map((i) => i.deletedBy.length));
|
|
24
|
+
const header = `${'TYPE'.padEnd(maxTypeLen)} ${'KEY'.padEnd(maxKeyLen)} ${'BY'.padEnd(maxByLen)} DELETED AT`;
|
|
25
|
+
const sep = `${'-'.repeat(maxTypeLen)} ${'-'.repeat(maxKeyLen)} ${'-'.repeat(maxByLen)} ${'-'.repeat(20)}`;
|
|
26
|
+
const rows = items.map((i) => `${i.configType.padEnd(maxTypeLen)} ${i.configKey.padEnd(maxKeyLen)} ${i.deletedBy.padEnd(maxByLen)} ${i.deletedAt.slice(0, 19).replace('T', ' ')}`);
|
|
27
|
+
this.log([header, sep, ...rows].join('\n'));
|
|
28
|
+
this.log('');
|
|
29
|
+
this.log('Restore one with: qfg activity restore <key>');
|
|
30
|
+
return { items };
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { JsonObj } from '../../result.js';
|
|
2
|
+
import { APICommand } from '../../index.js';
|
|
3
|
+
export default class ActivityFeed extends APICommand {
|
|
4
|
+
static description: string;
|
|
5
|
+
static examples: string[];
|
|
6
|
+
static flags: {
|
|
7
|
+
limit: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<number, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
8
|
+
};
|
|
9
|
+
run(): Promise<JsonObj | void>;
|
|
10
|
+
}
|