@meilisearch/cli 0.1.0 → 0.2.0
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 +12 -12
- package/dist/commands/auth/login.js +5 -4
- package/dist/commands/auth/login.js.map +1 -1
- package/dist/commands/auth/logout.js +7 -6
- package/dist/commands/auth/logout.js.map +1 -1
- package/dist/commands/auth/refresh.js +4 -5
- package/dist/commands/auth/refresh.js.map +1 -1
- package/dist/commands/auth/status.js +6 -6
- package/dist/commands/auth/status.js.map +1 -1
- package/dist/commands/{get/batches.js → batch/list.js} +6 -6
- package/dist/commands/batch/list.js.map +1 -0
- package/dist/commands/batch/view.js +18 -0
- package/dist/commands/batch/view.js.map +1 -0
- package/dist/commands/config/list.js +3 -2
- package/dist/commands/config/list.js.map +1 -1
- package/dist/commands/config/set.js +3 -4
- package/dist/commands/config/set.js.map +1 -1
- package/dist/commands/config/sync-with-cloud.js +5 -5
- package/dist/commands/config/sync-with-cloud.js.map +1 -1
- package/dist/commands/config/unset.js +3 -8
- package/dist/commands/config/unset.js.map +1 -1
- package/dist/commands/config/update.js +4 -4
- package/dist/commands/config/update.js.map +1 -1
- package/dist/commands/{add/documents.js → document/add.js} +6 -5
- package/dist/commands/document/add.js.map +1 -0
- package/dist/commands/{delete/documents.js → document/delete.js} +7 -6
- package/dist/commands/document/delete.js.map +1 -0
- package/dist/commands/{get/documents.js → document/list.js} +7 -8
- package/dist/commands/document/list.js.map +1 -0
- package/dist/commands/{update/documents.js → document/update.js} +6 -5
- package/dist/commands/document/update.js.map +1 -0
- package/dist/commands/document/view.js +42 -0
- package/dist/commands/document/view.js.map +1 -0
- package/dist/commands/export.js +3 -2
- package/dist/commands/export.js.map +1 -1
- package/dist/commands/facet-search.js +3 -2
- package/dist/commands/facet-search.js.map +1 -1
- package/dist/commands/{get/health.js → health.js} +3 -4
- package/dist/commands/health.js.map +1 -0
- package/dist/commands/{add/indexes.js → index/add.js} +7 -5
- package/dist/commands/index/add.js.map +1 -0
- package/dist/commands/{delete/indexes.js → index/delete.js} +6 -5
- package/dist/commands/index/delete.js.map +1 -0
- package/dist/commands/index/list.js +21 -0
- package/dist/commands/index/list.js.map +1 -0
- package/dist/commands/{update/indexes.js → index/update.js} +6 -5
- package/dist/commands/index/update.js.map +1 -0
- package/dist/commands/index/view.js +18 -0
- package/dist/commands/index/view.js.map +1 -0
- package/dist/commands/info.js +15 -0
- package/dist/commands/info.js.map +1 -0
- package/dist/commands/{add/keys.js → key/add.js} +9 -7
- package/dist/commands/key/add.js.map +1 -0
- package/dist/commands/{delete/keys.js → key/delete.js} +6 -5
- package/dist/commands/key/delete.js.map +1 -0
- package/dist/commands/key/list.js +24 -0
- package/dist/commands/key/list.js.map +1 -0
- package/dist/commands/{update/keys.js → key/update.js} +7 -5
- package/dist/commands/key/update.js.map +1 -0
- package/dist/commands/key/view.js +26 -0
- package/dist/commands/key/view.js.map +1 -0
- package/dist/commands/multi-search.js +4 -2
- package/dist/commands/multi-search.js.map +1 -1
- package/dist/commands/organization/delete.js +24 -0
- package/dist/commands/organization/delete.js.map +1 -0
- package/dist/commands/organization/list.js +15 -0
- package/dist/commands/organization/list.js.map +1 -0
- package/dist/commands/organization/update.js +32 -0
- package/dist/commands/organization/update.js.map +1 -0
- package/dist/commands/organization/view.js +21 -0
- package/dist/commands/organization/view.js.map +1 -0
- package/dist/commands/{add/projects.js → project/add.js} +7 -6
- package/dist/commands/project/add.js.map +1 -0
- package/dist/commands/{delete/projects.js → project/delete.js} +6 -5
- package/dist/commands/project/delete.js.map +1 -0
- package/dist/commands/project/list.js +28 -0
- package/dist/commands/project/list.js.map +1 -0
- package/dist/commands/{update/projects.js → project/update.js} +3 -4
- package/dist/commands/project/update.js.map +1 -0
- package/dist/commands/project/view.js +29 -0
- package/dist/commands/project/view.js.map +1 -0
- package/dist/commands/region/list.js +15 -0
- package/dist/commands/region/list.js.map +1 -0
- package/dist/commands/resource/list.js +28 -0
- package/dist/commands/resource/list.js.map +1 -0
- package/dist/commands/schema.js +4 -3
- package/dist/commands/schema.js.map +1 -1
- package/dist/commands/search.js +3 -2
- package/dist/commands/search.js.map +1 -1
- package/dist/commands/{delete/settings.js → settings/delete.js} +7 -6
- package/dist/commands/settings/delete.js.map +1 -0
- package/dist/commands/{update/settings.js → settings/update.js} +7 -5
- package/dist/commands/settings/update.js.map +1 -0
- package/dist/commands/{get/settings.js → settings/view.js} +7 -8
- package/dist/commands/settings/view.js.map +1 -0
- package/dist/commands/similar.js +3 -2
- package/dist/commands/similar.js.map +1 -1
- package/dist/commands/{get/stats.js → stats.js} +7 -6
- package/dist/commands/stats.js.map +1 -0
- package/dist/commands/{cancel/tasks.js → task/cancel.js} +7 -5
- package/dist/commands/task/cancel.js.map +1 -0
- package/dist/commands/{delete/tasks.js → task/delete.js} +7 -5
- package/dist/commands/{delete/tasks.js.map → task/delete.js.map} +1 -1
- package/dist/commands/{get/tasks.js → task/list.js} +6 -6
- package/dist/commands/task/list.js.map +1 -0
- package/dist/commands/task/view.js +20 -0
- package/dist/commands/task/view.js.map +1 -0
- package/dist/commands/team/add.js +32 -0
- package/dist/commands/team/add.js.map +1 -0
- package/dist/commands/team/delete.js +20 -0
- package/dist/commands/team/delete.js.map +1 -0
- package/dist/commands/team/list.js +15 -0
- package/dist/commands/team/list.js.map +1 -0
- package/dist/commands/team/update.js +32 -0
- package/dist/commands/team/update.js.map +1 -0
- package/dist/commands/team/view.js +17 -0
- package/dist/commands/team/view.js.map +1 -0
- package/dist/commands/teleport.js +15 -13
- package/dist/commands/teleport.js.map +1 -1
- package/dist/commands/version.js +11 -0
- package/dist/commands/version.js.map +1 -0
- package/dist/lib/api-naming.js +73 -62
- package/dist/lib/api-naming.js.map +1 -1
- package/dist/lib/base-command.js +13 -33
- package/dist/lib/base-command.js.map +1 -1
- package/dist/lib/clients/meilisearch.js +2 -2
- package/dist/lib/clients/oauth.js +1 -1
- package/dist/lib/clients/oauth.js.map +1 -1
- package/dist/lib/cloud-sync.js +1 -1
- package/dist/lib/config.js +8 -4
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/errors.js +51 -16
- package/dist/lib/errors.js.map +1 -1
- package/dist/lib/help.js +67 -14
- package/dist/lib/help.js.map +1 -1
- package/dist/lib/login.js +3 -13
- package/dist/lib/login.js.map +1 -1
- package/dist/lib/output.js +5 -29
- package/dist/lib/output.js.map +1 -1
- package/dist/lib/session.js +11 -0
- package/dist/lib/session.js.map +1 -1
- package/dist/lib/task-filters.js +4 -4
- package/dist/lib/task-filters.js.map +1 -1
- package/dist/lib/tasks.js +1 -1
- package/dist/lib/tasks.js.map +1 -1
- package/oclif.manifest.json +5787 -3133
- package/package.json +32 -14
- package/dist/commands/add/documents.js.map +0 -1
- package/dist/commands/add/indexes.js.map +0 -1
- package/dist/commands/add/keys.js.map +0 -1
- package/dist/commands/add/projects.js.map +0 -1
- package/dist/commands/cancel/tasks.js.map +0 -1
- package/dist/commands/delete/documents.js.map +0 -1
- package/dist/commands/delete/indexes.js.map +0 -1
- package/dist/commands/delete/keys.js.map +0 -1
- package/dist/commands/delete/projects.js.map +0 -1
- package/dist/commands/delete/settings.js.map +0 -1
- package/dist/commands/get/batches.js.map +0 -1
- package/dist/commands/get/documents.js.map +0 -1
- package/dist/commands/get/health.js.map +0 -1
- package/dist/commands/get/indexes.js +0 -33
- package/dist/commands/get/indexes.js.map +0 -1
- package/dist/commands/get/keys.js +0 -36
- package/dist/commands/get/keys.js.map +0 -1
- package/dist/commands/get/projects.js +0 -40
- package/dist/commands/get/projects.js.map +0 -1
- package/dist/commands/get/settings.js.map +0 -1
- package/dist/commands/get/stats.js.map +0 -1
- package/dist/commands/get/tasks.js.map +0 -1
- package/dist/commands/get/version.js +0 -16
- package/dist/commands/get/version.js.map +0 -1
- package/dist/commands/update/documents.js.map +0 -1
- package/dist/commands/update/indexes.js.map +0 -1
- package/dist/commands/update/keys.js.map +0 -1
- package/dist/commands/update/projects.js.map +0 -1
- package/dist/commands/update/settings.js.map +0 -1
package/README.md
CHANGED
|
@@ -10,13 +10,13 @@ With npm, where Node 22 or newer is installed:
|
|
|
10
10
|
npm install -g @meilisearch/cli
|
|
11
11
|
```
|
|
12
12
|
|
|
13
|
-
With Homebrew
|
|
13
|
+
With Homebrew:
|
|
14
14
|
|
|
15
15
|
```sh
|
|
16
16
|
brew install meilisearch/tap/meili
|
|
17
17
|
```
|
|
18
18
|
|
|
19
|
-
From the GitHub release assets, on macOS and Linux
|
|
19
|
+
From the GitHub release assets, on macOS and Linux:
|
|
20
20
|
|
|
21
21
|
```sh
|
|
22
22
|
curl -fsSL https://raw.githubusercontent.com/meilisearch/cli/main/scripts/install.sh | sh
|
|
@@ -50,11 +50,11 @@ The config file is `~/.config/meili/config.json` by default. `MEILI_CONFIG` sets
|
|
|
50
50
|
**3. Run commands**, naming the project with `--project`:
|
|
51
51
|
|
|
52
52
|
```sh
|
|
53
|
-
meili
|
|
53
|
+
meili index list --project prod
|
|
54
54
|
meili search --project prod --index movies --q "star wars"
|
|
55
|
-
meili add
|
|
56
|
-
meili update
|
|
57
|
-
meili add
|
|
55
|
+
meili document add --project local --index movies --file movies.json --wait
|
|
56
|
+
meili project update --project prod --name renamed # a management command, on the Cloud project of the entry
|
|
57
|
+
meili project add --name demo --team-id 12 --resource-id 3 --sync-config # creates a Cloud project and adds it to the file
|
|
58
58
|
```
|
|
59
59
|
|
|
60
60
|
`--project` is required on every command. Without a config file, give the instance directly: `--project-url <url> --project-api-key <key>`.
|
|
@@ -71,24 +71,24 @@ meili teleport
|
|
|
71
71
|
|
|
72
72
|
It asks for the project to move, from the config file or by its URL and key. It checks that the key can export, logs you in to Meilisearch Cloud (and creates your account), creates the project on the free trial or on the plan you choose, adds it to the config file, and sends the data to it.
|
|
73
73
|
|
|
74
|
-
`meili teleport` is interactive
|
|
74
|
+
`meili teleport` is interactive. The same steps without questions:
|
|
75
75
|
|
|
76
76
|
```sh
|
|
77
77
|
meili auth login # a human logs in once, in a browser
|
|
78
|
-
meili add
|
|
78
|
+
meili project add --name cloud --team-id <id> --resource-id <id> --sync-config --wait
|
|
79
79
|
meili export --project local --project-destination cloud --wait
|
|
80
|
-
meili
|
|
80
|
+
meili task list --project cloud --statuses enqueued,processing # run it again until it lists no task
|
|
81
81
|
```
|
|
82
82
|
|
|
83
|
-
The team id and the resource id
|
|
83
|
+
The team id and the resource id can be fetched with `meili team list` and `meili resource list`.
|
|
84
84
|
|
|
85
85
|
## Documentation
|
|
86
86
|
|
|
87
87
|
```sh
|
|
88
88
|
meili --help # every command, global flag and environment variable
|
|
89
|
-
meili
|
|
89
|
+
meili index list --help # one command: flags, examples
|
|
90
90
|
meili schema # the command tree as JSON, one entry per command with its routes
|
|
91
|
-
meili schema --command "
|
|
91
|
+
meili schema --command "index list" # one command in full, as JSON
|
|
92
92
|
```
|
|
93
93
|
|
|
94
94
|
## Analytics
|
|
@@ -4,10 +4,11 @@ import { writeNotice } from "../../lib/errors.js";
|
|
|
4
4
|
import { logInWithBrowser } from "../../lib/login.js";
|
|
5
5
|
export default class AuthLogin extends BaseCommand {
|
|
6
6
|
static api = "none";
|
|
7
|
-
static description =
|
|
7
|
+
static description = `Log in to Meilisearch Cloud in a browser.
|
|
8
|
+
|
|
9
|
+
Stores the token for the management commands.`;
|
|
8
10
|
static examples = [
|
|
9
11
|
"<%= config.bin %> <%= command.id %>",
|
|
10
|
-
"<%= config.bin %> <%= command.id %> --output json",
|
|
11
12
|
"<%= config.bin %> <%= command.id %> --no-browser",
|
|
12
13
|
];
|
|
13
14
|
static flags = {
|
|
@@ -19,8 +20,8 @@ export default class AuthLogin extends BaseCommand {
|
|
|
19
20
|
};
|
|
20
21
|
async run() {
|
|
21
22
|
const { flags } = await this.parse(AuthLogin);
|
|
22
|
-
const { path
|
|
23
|
-
writeNotice(`Logged in
|
|
23
|
+
const { path } = await logInWithBrowser(this.env, flags.browser, this.userAgent);
|
|
24
|
+
writeNotice(`Logged in. The session is in ${path}.`);
|
|
24
25
|
}
|
|
25
26
|
}
|
|
26
27
|
//# sourceMappingURL=login.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../../src/commands/auth/login.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAY,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,WAAW;IAChD,MAAM,CAAC,GAAG,GAAQ,MAAM,CAAC;IAEzB,MAAM,CAAU,WAAW,
|
|
1
|
+
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../../src/commands/auth/login.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAY,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,WAAW;IAChD,MAAM,CAAC,GAAG,GAAQ,MAAM,CAAC;IAEzB,MAAM,CAAU,WAAW,GAAG;;8CAEc,CAAC;IAE7C,MAAM,CAAU,QAAQ,GAAG;QACzB,qCAAqC;QACrC,kDAAkD;KACnD,CAAC;IAEF,MAAM,CAAU,KAAK,GAAG;QACtB,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;YACrB,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,IAAI;YACb,WAAW,EAAE,uEAAuE;SACrF,CAAC;KACH,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC9C,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACjF,WAAW,CAAC,gCAAgC,IAAI,GAAG,CAAC,CAAC;IACvD,CAAC;CACF"}
|
|
@@ -5,15 +5,16 @@ import { MeiliCliError, writeNotice } from "../../lib/errors.js";
|
|
|
5
5
|
import { removeCredentialsFile } from "../../lib/session.js";
|
|
6
6
|
export default class AuthLogout extends BaseCommand {
|
|
7
7
|
static api = "none";
|
|
8
|
-
static description =
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
];
|
|
8
|
+
static description = `Log out of Meilisearch Cloud.
|
|
9
|
+
|
|
10
|
+
Revokes the token of \`auth login\` and forgets it. Does nothing when nobody is logged in.`;
|
|
11
|
+
static examples = ["<%= config.bin %> <%= command.id %>"];
|
|
13
12
|
async run() {
|
|
14
13
|
const { path, session } = this.credentialsFile();
|
|
15
|
-
if (session === undefined)
|
|
14
|
+
if (session === undefined) {
|
|
15
|
+
writeNotice("Nobody was logged in.");
|
|
16
16
|
return;
|
|
17
|
+
}
|
|
17
18
|
try {
|
|
18
19
|
await revokeSession(session);
|
|
19
20
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logout.js","sourceRoot":"","sources":["../../../src/commands/auth/logout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAY,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,WAAW;IACjD,MAAM,CAAC,GAAG,GAAQ,MAAM,CAAC;IAEzB,MAAM,CAAU,WAAW,
|
|
1
|
+
{"version":3,"file":"logout.js","sourceRoot":"","sources":["../../../src/commands/auth/logout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAY,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,WAAW;IACjD,MAAM,CAAC,GAAG,GAAQ,MAAM,CAAC;IAEzB,MAAM,CAAU,WAAW,GAAG;;2FAE2D,CAAC;IAE1F,MAAM,CAAU,QAAQ,GAAG,CAAC,qCAAqC,CAAC,CAAC;IAEnE,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACjD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,WAAW,CAAC,uBAAuB,CAAC,CAAC;YACrC,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,aAAa,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,CAAC,KAAK,YAAY,aAAa,CAAC;gBAAE,MAAM,KAAK,CAAC;YACnD,8EAA8E;YAC9E,MAAM,IAAI,aAAa,CACrB,KAAK,CAAC,IAAI,EACV,GAAG,KAAK,CAAC,OAAO,sFAAsF,EACtG,EAAE,IAAI,EAAE,iDAAiD,EAAE,CAC5D,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,qBAAqB,CAAC,IAAI,CAAC,CAAC;YAC5B,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC;QACD,WAAW,CAAC,2CAA2C,IAAI,WAAW,CAAC,CAAC;IAC1E,CAAC;CACF"}
|
|
@@ -3,11 +3,10 @@ import { MeiliCliError, writeNotice } from "../../lib/errors.js";
|
|
|
3
3
|
import { refreshSession } from "../../lib/session.js";
|
|
4
4
|
export default class AuthRefresh extends BaseCommand {
|
|
5
5
|
static api = "none";
|
|
6
|
-
static description =
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
];
|
|
6
|
+
static description = `Refresh the Meilisearch Cloud session.
|
|
7
|
+
|
|
8
|
+
Trades the refresh token of the stored session for a new access token, before it expires.`;
|
|
9
|
+
static examples = ["<%= config.bin %> <%= command.id %>"];
|
|
11
10
|
async run() {
|
|
12
11
|
const { path, session } = this.credentialsFile();
|
|
13
12
|
if (session === undefined) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"refresh.js","sourceRoot":"","sources":["../../../src/commands/auth/refresh.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,WAAW;IAClD,MAAM,CAAC,GAAG,GAAQ,MAAM,CAAC;IAEzB,MAAM,CAAU,WAAW,
|
|
1
|
+
{"version":3,"file":"refresh.js","sourceRoot":"","sources":["../../../src/commands/auth/refresh.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,WAAW;IAClD,MAAM,CAAC,GAAG,GAAQ,MAAM,CAAC;IAEzB,MAAM,CAAU,WAAW,GAAG;;0FAE0D,CAAC;IAEzF,MAAM,CAAU,QAAQ,GAAG,CAAC,qCAAqC,CAAC,CAAC;IAEnE,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACjD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,IAAI,aAAa,CAAC,kBAAkB,EAAE,sCAAsC,EAAE;gBAClF,IAAI,EAAE,yBAAyB;aAChC,CAAC,CAAC;QACL,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACtD,WAAW,CAAC,wCAAwC,SAAS,CAAC,SAAS,GAAG,CAAC,CAAC;IAC9E,CAAC;CACF"}
|
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
import { BaseCommand } from "../../lib/base-command.js";
|
|
2
2
|
import { tokenInfo } from "../../lib/clients/oauth.js";
|
|
3
3
|
import { MeiliCliError } from "../../lib/errors.js";
|
|
4
|
-
import { ensureFreshSession } from "../../lib/session.js";
|
|
4
|
+
import { ensureFreshSession, sessionUser } from "../../lib/session.js";
|
|
5
5
|
export default class AuthStatus extends BaseCommand {
|
|
6
6
|
static api = "none";
|
|
7
|
-
static description =
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
];
|
|
7
|
+
static description = `Show the Meilisearch Cloud session.
|
|
8
|
+
|
|
9
|
+
Says whether a session of \`auth login\` exists, whether the authorization server still accepts it, and who it logs in.`;
|
|
10
|
+
static examples = ["<%= config.bin %> <%= command.id %>"];
|
|
12
11
|
async run() {
|
|
13
12
|
const { path, session } = this.credentialsFile();
|
|
14
13
|
if (session === undefined) {
|
|
@@ -24,6 +23,7 @@ export default class AuthStatus extends BaseCommand {
|
|
|
24
23
|
throw new MeiliCliError("cli_auth_failed", "The authorization server no longer accepts this session.", { hint: "Run `meili auth login` to log in again." });
|
|
25
24
|
}
|
|
26
25
|
await this.output({
|
|
26
|
+
user: await sessionUser(fresh, this.userAgent),
|
|
27
27
|
managementUrl: fresh.managementUrl,
|
|
28
28
|
scope: info.scope ?? fresh.scope,
|
|
29
29
|
expiresAt: info.expiresAt ?? fresh.expiresAt,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/commands/auth/status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/commands/auth/status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEvE,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,WAAW;IACjD,MAAM,CAAC,GAAG,GAAQ,MAAM,CAAC;IAEzB,MAAM,CAAU,WAAW,GAAG;;wHAEwF,CAAC;IAEvH,MAAM,CAAU,QAAQ,GAAG,CAAC,qCAAqC,CAAC,CAAC;IAEnE,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACjD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,IAAI,aAAa,CAAC,kBAAkB,EAAE,sCAAsC,EAAE;gBAClF,IAAI,EAAE,yBAAyB;aAChC,CAAC,CAAC;QACL,CAAC;QAED,0EAA0E;QAC1E,wDAAwD;QACxD,MAAM,KAAK,GAAG,MAAM,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACtD,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,MAAM,IAAI,aAAa,CACrB,iBAAiB,EACjB,0DAA0D,EAC1D,EAAE,IAAI,EAAE,yCAAyC,EAAE,CACpD,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,CAAC,MAAM,CAAC;YAChB,IAAI,EAAE,MAAM,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC;YAC9C,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK;YAChC,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS;YAC5C,WAAW,EAAE,IAAI;SAClB,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
@@ -2,18 +2,18 @@ import { Flags } from "@oclif/core";
|
|
|
2
2
|
import { BaseCommand } from "../../lib/base-command.js";
|
|
3
3
|
import { nextFromQuery } from "../../lib/pagination.js";
|
|
4
4
|
import { batchFilterFlags, batchFilterQuery } from "../../lib/task-filters.js";
|
|
5
|
-
export default class
|
|
5
|
+
export default class BatchList extends BaseCommand {
|
|
6
6
|
static api = "meilisearch";
|
|
7
7
|
static routes = ["GET /batches"];
|
|
8
8
|
static keyActions = ["tasks.get"];
|
|
9
|
-
static description =
|
|
9
|
+
static description = `List the batches of tasks.
|
|
10
|
+
|
|
11
|
+
--ids, --task-ids, --statuses and the other filters of the route narrow the list.`;
|
|
10
12
|
static examples = [
|
|
11
13
|
"<%= config.bin %> <%= command.id %> --project prod",
|
|
12
|
-
"<%= config.bin %> <%= command.id %> --project prod --output json",
|
|
13
14
|
"<%= config.bin %> <%= command.id %> --project prod --ids 7",
|
|
14
15
|
"<%= config.bin %> <%= command.id %> --project prod --task-ids 42",
|
|
15
16
|
"<%= config.bin %> <%= command.id %> --project prod --statuses failed --index-ids movies --limit 5",
|
|
16
|
-
"<%= config.bin %> <%= command.id %> --project prod --all --output ndjson",
|
|
17
17
|
];
|
|
18
18
|
static flags = {
|
|
19
19
|
...BaseCommand.connectionFlags,
|
|
@@ -24,7 +24,7 @@ export default class GetBatches extends BaseCommand {
|
|
|
24
24
|
...BaseCommand.fromPaginationFlags,
|
|
25
25
|
};
|
|
26
26
|
async run() {
|
|
27
|
-
const { flags } = await this.parse(
|
|
27
|
+
const { flags } = await this.parse(BatchList);
|
|
28
28
|
const filters = {
|
|
29
29
|
...batchFilterQuery(flags),
|
|
30
30
|
reverse: flags.reverse ? true : undefined,
|
|
@@ -32,4 +32,4 @@ export default class GetBatches extends BaseCommand {
|
|
|
32
32
|
await this.outputList((page) => this.meilisearch.batches.getBatches({ ...filters, ...page }), { limit: flags.limit, from: flags.from }, flags.all, nextFromQuery);
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
|
-
//# sourceMappingURL=
|
|
35
|
+
//# sourceMappingURL=list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/batch/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAY,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE/E,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,WAAW;IAChD,MAAM,CAAC,GAAG,GAAQ,aAAa,CAAC;IAEhC,MAAM,CAAC,MAAM,GAAG,CAAC,cAAc,CAAC,CAAC;IAEjC,MAAM,CAAC,UAAU,GAAG,CAAC,WAAW,CAAC,CAAC;IAElC,MAAM,CAAU,WAAW,GAAG;;kFAEkD,CAAC;IAEjF,MAAM,CAAU,QAAQ,GAAG;QACzB,oDAAoD;QACpD,4DAA4D;QAC5D,kEAAkE;QAClE,mGAAmG;KACpG,CAAC;IAEF,MAAM,CAAU,KAAK,GAAG;QACtB,GAAG,WAAW,CAAC,eAAe;QAC9B,GAAG,gBAAgB;QACnB,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;YACrB,WAAW,EAAE,wEAAwE;SACtF,CAAC;QACF,GAAG,WAAW,CAAC,mBAAmB;KACnC,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC9C,MAAM,OAAO,GAAG;YACd,GAAG,gBAAgB,CAAC,KAAK,CAAC;YAC1B,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;SAC1C,CAAC;QACF,MAAM,IAAI,CAAC,UAAU,CACnB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC,EACtE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EACxC,KAAK,CAAC,GAAG,EACT,aAAa,CACd,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Flags } from "@oclif/core";
|
|
2
|
+
import { BaseCommand } from "../../lib/base-command.js";
|
|
3
|
+
export default class BatchView extends BaseCommand {
|
|
4
|
+
static api = "meilisearch";
|
|
5
|
+
static routes = ["GET /batches/{batch_id}"];
|
|
6
|
+
static keyActions = ["tasks.get"];
|
|
7
|
+
static description = "Get one batch of tasks.";
|
|
8
|
+
static examples = ["<%= config.bin %> <%= command.id %> --project prod --id 7"];
|
|
9
|
+
static flags = {
|
|
10
|
+
...BaseCommand.connectionFlags,
|
|
11
|
+
id: Flags.integer({ required: true, description: "The batch uid.", helpValue: "<uid>" }),
|
|
12
|
+
};
|
|
13
|
+
async run() {
|
|
14
|
+
const { flags } = await this.parse(BatchView);
|
|
15
|
+
await this.output(await this.meilisearch.batches.getBatch(flags.id));
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=view.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"view.js","sourceRoot":"","sources":["../../../src/commands/batch/view.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAY,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAElE,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,WAAW;IAChD,MAAM,CAAC,GAAG,GAAQ,aAAa,CAAC;IAEhC,MAAM,CAAC,MAAM,GAAG,CAAC,yBAAyB,CAAC,CAAC;IAE5C,MAAM,CAAC,UAAU,GAAG,CAAC,WAAW,CAAC,CAAC;IAElC,MAAM,CAAU,WAAW,GAAG,yBAAyB,CAAC;IAExD,MAAM,CAAU,QAAQ,GAAG,CAAC,2DAA2D,CAAC,CAAC;IAEzF,MAAM,CAAU,KAAK,GAAG;QACtB,GAAG,WAAW,CAAC,eAAe;QAC9B,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,gBAAgB,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;KACzF,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC9C,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC;CACF"}
|
|
@@ -2,10 +2,11 @@ import { BaseCommand } from "../../lib/base-command.js";
|
|
|
2
2
|
import { redactBody } from "../../lib/config.js";
|
|
3
3
|
export default class ConfigList extends BaseCommand {
|
|
4
4
|
static api = "none";
|
|
5
|
-
static description =
|
|
5
|
+
static description = `List the projects of the config file.
|
|
6
|
+
|
|
7
|
+
Prints the path of the file and its projects as JSON, keys masked.`;
|
|
6
8
|
static examples = [
|
|
7
9
|
"<%= config.bin %> <%= command.id %>",
|
|
8
|
-
"<%= config.bin %> <%= command.id %> --output json",
|
|
9
10
|
"MEILI_CONFIG=./meili.json <%= config.bin %> <%= command.id %>",
|
|
10
11
|
];
|
|
11
12
|
async run() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/config/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,WAAW;IACjD,MAAM,CAAC,GAAG,GAAQ,MAAM,CAAC;IAEzB,MAAM,CAAU,WAAW,GAAG,
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/config/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,WAAW;IACjD,MAAM,CAAC,GAAG,GAAQ,MAAM,CAAC;IAEzB,MAAM,CAAU,WAAW,GAAG;;mEAEmC,CAAC;IAElE,MAAM,CAAU,QAAQ,GAAG;QACzB,qCAAqC;QACrC,+DAA+D;KAChE,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAC/B,yDAAyD;QACzD,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CACjC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAChF,CAAC;QACF,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;IACnD,CAAC;CACF"}
|
|
@@ -1,18 +1,17 @@
|
|
|
1
1
|
import { Flags } from "@oclif/core";
|
|
2
2
|
import { BaseCommand } from "../../lib/base-command.js";
|
|
3
3
|
import { cloudEntry, findProjectByUrl } from "../../lib/cloud-sync.js";
|
|
4
|
-
import { assertNoProject, assertProjectUrl,
|
|
4
|
+
import { assertNoProject, assertProjectUrl, writeConfigFile, } from "../../lib/config.js";
|
|
5
5
|
import { readStdin } from "../../lib/input.js";
|
|
6
6
|
export default class ConfigSet extends BaseCommand {
|
|
7
7
|
static api = "none";
|
|
8
|
-
static description = `
|
|
8
|
+
static description = `Add a project to the config file.
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
Creates the file, owner-only, and refuses a name that exists. Talks to the Management API only with --sync-with-cloud.`;
|
|
11
11
|
static examples = [
|
|
12
12
|
"<%= config.bin %> <%= command.id %> --project local --project-url http://localhost:7700",
|
|
13
13
|
"<%= config.bin %> <%= command.id %> --project prod --project-url https://ms-abc.sfo.meilisearch.io --project-api-key - < key.txt",
|
|
14
14
|
"<%= config.bin %> <%= command.id %> --project prod --project-url https://ms-abc.sfo.meilisearch.io --sync-with-cloud",
|
|
15
|
-
"<%= config.bin %> <%= command.id %> --project local --project-url http://localhost:7700 --output json",
|
|
16
15
|
];
|
|
17
16
|
static flags = {
|
|
18
17
|
project: Flags.string({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"set.js","sourceRoot":"","sources":["../../../src/commands/config/set.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAY,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EACL,eAAe,EACf,gBAAgB,
|
|
1
|
+
{"version":3,"file":"set.js","sourceRoot":"","sources":["../../../src/commands/config/set.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAY,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EACL,eAAe,EACf,gBAAgB,EAEhB,eAAe,GAChB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,WAAW;IAChD,MAAM,CAAC,GAAG,GAAQ,MAAM,CAAC;IAEzB,MAAM,CAAU,WAAW,GAAG;;uHAEuF,CAAC;IAEtH,MAAM,CAAU,QAAQ,GAAG;QACzB,yFAAyF;QACzF,kIAAkI;QAClI,sHAAsH;KACvH,CAAC;IAEF,MAAM,CAAU,KAAK,GAAG;QACtB,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC;YACpB,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,6BAA6B;YAC1C,SAAS,EAAE,QAAQ;SACpB,CAAC;QACF,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC;YAC1B,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,qBAAqB;YAClC,SAAS,EAAE,OAAO;SACnB,CAAC;QACF,iBAAiB,EAAE,KAAK,CAAC,MAAM,CAAC;YAC9B,WAAW,EAAE,4EAA4E;YACzF,SAAS,EAAE,OAAO;YAClB,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;SAC9D,CAAC;QACF,GAAG,WAAW,CAAC,kBAAkB;KAClC,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC9C,MAAM,GAAG,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;QACjC,gBAAgB,CAAC,GAAG,CAAC,CAAC;QACtB,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAC/B,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAC1C,MAAM,MAAM,GAAG,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACxC,MAAM,KAAK,GAAiB,KAAK,CAAC,iBAAiB,CAAC;YAClD,CAAC,CAAC,MAAM,UAAU,CACd,IAAI,CAAC,gBAAgB,EACrB,MAAM,gBAAgB,CAAC,IAAI,CAAC,gBAAgB,EAAE,GAAG,CAAC,EAClD,KAAK,CAAC,OAAO,EACb,GAAG,EACH,MAAM,CACP;YACH,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;QACpB,eAAe,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;IAC/F,CAAC;CACF"}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import { Flags } from "@oclif/core";
|
|
2
2
|
import { BaseCommand } from "../../lib/base-command.js";
|
|
3
3
|
import { cloudOf, findProjectByUrl, listCloudProjects, readMasterKey, readTeamNames, sameOrigin, warnUrlAnomaly, } from "../../lib/cloud-sync.js";
|
|
4
|
-
import { assertProjectUrl,
|
|
4
|
+
import { assertProjectUrl, entriesOfCloudId, writeConfigFile, } from "../../lib/config.js";
|
|
5
5
|
import { MeiliCliError, writeWarning } from "../../lib/errors.js";
|
|
6
6
|
const SCOPES = ["all", "team-ids", "project-name", "project-url"];
|
|
7
7
|
export default class ConfigSyncWithCloud extends BaseCommand {
|
|
8
8
|
static api = "management";
|
|
9
|
-
static description = `
|
|
9
|
+
static description = `Add the Meilisearch Cloud projects to the config file.
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
Gives every project of the scope an entry, with its cloud identifiers, and its master key when the entry has no key. Never replaces a key, never removes an entry. Prints one item per project.`;
|
|
12
12
|
static examples = [
|
|
13
13
|
"<%= config.bin %> <%= command.id %> --all",
|
|
14
14
|
"<%= config.bin %> <%= command.id %> --team-ids 12,13",
|
|
15
15
|
"<%= config.bin %> <%= command.id %> --project-name prod",
|
|
16
|
-
"<%= config.bin %> <%= command.id %> --project-url https://ms-abc.sfo.meilisearch.io
|
|
16
|
+
"<%= config.bin %> <%= command.id %> --project-url https://ms-abc.sfo.meilisearch.io",
|
|
17
17
|
];
|
|
18
18
|
static flags = {
|
|
19
19
|
all: Flags.boolean({ description: "Every project the token sees.", exactlyOne: SCOPES }),
|
|
@@ -102,7 +102,7 @@ ${CONFIG_FILE_WARNING}`;
|
|
|
102
102
|
if (report.some((each) => each.action !== "unchanged")) {
|
|
103
103
|
writeConfigFile({ path: file.path, projects: entries });
|
|
104
104
|
}
|
|
105
|
-
await this.output(report
|
|
105
|
+
await this.output(report);
|
|
106
106
|
}
|
|
107
107
|
}
|
|
108
108
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-with-cloud.js","sourceRoot":"","sources":["../../../src/commands/config/sync-with-cloud.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAY,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAElE,OAAO,EACL,OAAO,EACP,gBAAgB,EAChB,iBAAiB,EAEjB,aAAa,EACb,aAAa,EACb,UAAU,EACV,cAAc,GACf,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,gBAAgB,
|
|
1
|
+
{"version":3,"file":"sync-with-cloud.js","sourceRoot":"","sources":["../../../src/commands/config/sync-with-cloud.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,10 @@
|
|
|
1
1
|
import { Flags } from "@oclif/core";
|
|
2
2
|
import { BaseCommand } from "../../lib/base-command.js";
|
|
3
|
-
import {
|
|
3
|
+
import { projectOf, writeConfigFile } from "../../lib/config.js";
|
|
4
4
|
export default class ConfigUnset extends BaseCommand {
|
|
5
5
|
static api = "none";
|
|
6
|
-
static description = `Remove a project from the config file
|
|
7
|
-
|
|
8
|
-
${CONFIG_FILE_WARNING}`;
|
|
9
|
-
static examples = [
|
|
10
|
-
"<%= config.bin %> <%= command.id %> --project prod",
|
|
11
|
-
"<%= config.bin %> <%= command.id %> --project prod --output json",
|
|
12
|
-
];
|
|
6
|
+
static description = `Remove a project from the config file.`;
|
|
7
|
+
static examples = ["<%= config.bin %> <%= command.id %> --project prod"];
|
|
13
8
|
static flags = {
|
|
14
9
|
project: Flags.string({
|
|
15
10
|
required: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unset.js","sourceRoot":"","sources":["../../../src/commands/config/unset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAY,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"unset.js","sourceRoot":"","sources":["../../../src/commands/config/unset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAY,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEjE,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,WAAW;IAClD,MAAM,CAAC,GAAG,GAAQ,MAAM,CAAC;IAEzB,MAAM,CAAU,WAAW,GAAG,wCAAwC,CAAC;IAEvE,MAAM,CAAU,QAAQ,GAAG,CAAC,oDAAoD,CAAC,CAAC;IAElF,MAAM,CAAU,KAAK,GAAG;QACtB,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC;YACpB,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,gCAAgC;YAC7C,SAAS,EAAE,QAAQ;SACpB,CAAC;KACH,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAChD,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAC/B,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC/B,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,GAAG,QAAQ,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;QACjE,eAAe,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;IACjD,CAAC;CACF"}
|
|
@@ -2,17 +2,17 @@ import { Flags } from "@oclif/core";
|
|
|
2
2
|
import { BaseCommand } from "../../lib/base-command.js";
|
|
3
3
|
import { getApiV2ProjectsById } from "../../lib/clients/management/generated/sdk.gen.js";
|
|
4
4
|
import { cloudEntry, findProjectByUrl, warnUrlAnomaly } from "../../lib/cloud-sync.js";
|
|
5
|
-
import { assertProjectUrl,
|
|
5
|
+
import { assertProjectUrl, projectOf, writeConfigFile, } from "../../lib/config.js";
|
|
6
6
|
import { readStdin } from "../../lib/input.js";
|
|
7
7
|
export default class ConfigUpdate extends BaseCommand {
|
|
8
8
|
static api = "none";
|
|
9
|
-
static description = `Change
|
|
9
|
+
static description = `Change a project of the config file.
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
Changes the fields given, and refuses a name that does not exist. Talks to the Management API only with --sync-with-cloud.`;
|
|
12
12
|
static examples = [
|
|
13
13
|
"<%= config.bin %> <%= command.id %> --project prod --sync-with-cloud",
|
|
14
14
|
"<%= config.bin %> <%= command.id %> --project prod --project-api-key - < key.txt",
|
|
15
|
-
"<%= config.bin %> <%= command.id %> --project local --project-url http://localhost:7701
|
|
15
|
+
"<%= config.bin %> <%= command.id %> --project local --project-url http://localhost:7701",
|
|
16
16
|
];
|
|
17
17
|
static flags = {
|
|
18
18
|
project: Flags.string({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/commands/config/update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAY,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mDAAmD,CAAC;AACzF,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACvF,OAAO,EACL,gBAAgB,
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/commands/config/update.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,14 +2,15 @@ import { Flags } from "@oclif/core";
|
|
|
2
2
|
import { BaseCommand } from "../../lib/base-command.js";
|
|
3
3
|
import { MeiliCliError } from "../../lib/errors.js";
|
|
4
4
|
import { readJsonBody } from "../../lib/input.js";
|
|
5
|
-
export default class
|
|
5
|
+
export default class DocumentAdd extends BaseCommand {
|
|
6
6
|
static api = "meilisearch";
|
|
7
7
|
static routes = ["POST /indexes/{index_uid}/documents"];
|
|
8
8
|
static keyActions = ["documents.add"];
|
|
9
|
-
static description =
|
|
9
|
+
static description = `Add or replace documents in an index.
|
|
10
|
+
|
|
11
|
+
A document replaces the one that has the same primary key.`;
|
|
10
12
|
static examples = [
|
|
11
13
|
"<%= config.bin %> <%= command.id %> --project prod --index movies --file movies.json",
|
|
12
|
-
"<%= config.bin %> <%= command.id %> --project prod --index movies --file movies.json --output json",
|
|
13
14
|
"cat movies.json | <%= config.bin %> <%= command.id %> --project prod --index movies --file -",
|
|
14
15
|
'<%= config.bin %> <%= command.id %> --project prod --index movies --data \'[{"id":1,"title":"Nosferatu"}]\' --primary-key id',
|
|
15
16
|
"<%= config.bin %> <%= command.id %> --project prod --index movies --file movies.json --wait",
|
|
@@ -36,7 +37,7 @@ export default class AddDocuments extends BaseCommand {
|
|
|
36
37
|
...BaseCommand.waitFlags,
|
|
37
38
|
};
|
|
38
39
|
async run() {
|
|
39
|
-
const { flags } = await this.parse(
|
|
40
|
+
const { flags } = await this.parse(DocumentAdd);
|
|
40
41
|
const documents = readJsonBody(flags);
|
|
41
42
|
if (documents === undefined) {
|
|
42
43
|
throw new MeiliCliError("cli_usage", "The documents to add are missing.", {
|
|
@@ -51,4 +52,4 @@ export default class AddDocuments extends BaseCommand {
|
|
|
51
52
|
await this.outputTask(task, flags);
|
|
52
53
|
}
|
|
53
54
|
}
|
|
54
|
-
//# sourceMappingURL=
|
|
55
|
+
//# sourceMappingURL=add.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add.js","sourceRoot":"","sources":["../../../src/commands/document/add.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAY,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,WAAW;IAClD,MAAM,CAAC,GAAG,GAAQ,aAAa,CAAC;IAEhC,MAAM,CAAC,MAAM,GAAG,CAAC,qCAAqC,CAAC,CAAC;IAExD,MAAM,CAAC,UAAU,GAAG,CAAC,eAAe,CAAC,CAAC;IAEtC,MAAM,CAAU,WAAW,GAAG;;2DAE2B,CAAC;IAE1D,MAAM,CAAU,QAAQ,GAAG;QACzB,sFAAsF;QACtF,8FAA8F;QAC9F,8HAA8H;QAC9H,6FAA6F;KAC9F,CAAC;IAEF,MAAM,CAAU,KAAK,GAAG;QACtB,GAAG,WAAW,CAAC,eAAe;QAC9B,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC;YAClB,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,oCAAoC;YACjD,SAAS,EAAE,SAAS;SACrB,CAAC;QACF,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC;YAC1B,WAAW,EAAE,2EAA2E;YACxF,SAAS,EAAE,SAAS;SACrB,CAAC;QACF,iBAAiB,EAAE,KAAK,CAAC,MAAM,CAAC;YAC9B,WAAW,EAAE,2DAA2D;YACxE,SAAS,EAAE,UAAU;SACtB,CAAC;QACF,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC;YAC7B,WAAW,EAAE,gEAAgE;SAC9E,CAAC;QACF,GAAG,WAAW,CAAC,cAAc;QAC7B,GAAG,WAAW,CAAC,SAAS;KACzB,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAChD,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,IAAI,aAAa,CAAC,WAAW,EAAE,mCAAmC,EAAE;gBACxE,IAAI,EAAE,iFAAiF;aACxF,CAAC,CAAC;QACL,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,SAAwB,EAAE;YAC5F,UAAU,EAAE,KAAK,CAAC,aAAa,CAAC;YAChC,cAAc,EAAE,KAAK,CAAC,iBAAiB,CAAC;YACxC,YAAY,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;SACxD,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACrC,CAAC;CACF"}
|
|
@@ -2,7 +2,7 @@ import { Flags } from "@oclif/core";
|
|
|
2
2
|
import { BaseCommand } from "../../lib/base-command.js";
|
|
3
3
|
import { MeiliCliError } from "../../lib/errors.js";
|
|
4
4
|
import { isJsonObject, readJsonBody } from "../../lib/input.js";
|
|
5
|
-
export default class
|
|
5
|
+
export default class DocumentDelete extends BaseCommand {
|
|
6
6
|
static api = "meilisearch";
|
|
7
7
|
static routes = [
|
|
8
8
|
"DELETE /indexes/{index_uid}/documents",
|
|
@@ -10,10 +10,12 @@ export default class DeleteDocuments extends BaseCommand {
|
|
|
10
10
|
"POST /indexes/{index_uid}/documents/delete-batch",
|
|
11
11
|
];
|
|
12
12
|
static keyActions = ["documents.delete"];
|
|
13
|
-
static description =
|
|
13
|
+
static description = `Delete documents from an index.
|
|
14
|
+
|
|
15
|
+
Deletes the documents named by --ids, matched by --filter, or every one of them with --all.`;
|
|
14
16
|
static examples = [
|
|
15
17
|
"<%= config.bin %> <%= command.id %> --project prod --index movies --ids 42,1344 --yes",
|
|
16
|
-
"<%= config.bin %> <%= command.id %> --project prod --index movies --ids 42 --yes
|
|
18
|
+
"<%= config.bin %> <%= command.id %> --project prod --index movies --ids 42 --yes",
|
|
17
19
|
"<%= config.bin %> <%= command.id %> --project prod --index movies --filter 'rating < 2' --yes",
|
|
18
20
|
"<%= config.bin %> <%= command.id %> --project prod --index movies --file ids.json --yes",
|
|
19
21
|
"<%= config.bin %> <%= command.id %> --project prod --index movies --all --yes --wait",
|
|
@@ -26,7 +28,6 @@ export default class DeleteDocuments extends BaseCommand {
|
|
|
26
28
|
helpValue: "<index>",
|
|
27
29
|
}),
|
|
28
30
|
ids: Flags.string({
|
|
29
|
-
aliases: ["id"],
|
|
30
31
|
exclusive: ["filter", "all"],
|
|
31
32
|
description: "Document identifiers to delete, comma-separated.",
|
|
32
33
|
helpValue: "<ids>",
|
|
@@ -49,7 +50,7 @@ export default class DeleteDocuments extends BaseCommand {
|
|
|
49
50
|
...BaseCommand.confirmFlags,
|
|
50
51
|
};
|
|
51
52
|
async run() {
|
|
52
|
-
const { flags } = await this.parse(
|
|
53
|
+
const { flags } = await this.parse(DocumentDelete);
|
|
53
54
|
const index = this.meilisearch.index(flags.index);
|
|
54
55
|
const options = { customMetadata: flags["custom-metadata"] };
|
|
55
56
|
if (flags.all) {
|
|
@@ -78,4 +79,4 @@ export default class DeleteDocuments extends BaseCommand {
|
|
|
78
79
|
});
|
|
79
80
|
}
|
|
80
81
|
}
|
|
81
|
-
//# sourceMappingURL=
|
|
82
|
+
//# sourceMappingURL=delete.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../src/commands/document/delete.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,17 +4,17 @@ import { fetchDocuments } from "../../lib/clients/meilisearch.js";
|
|
|
4
4
|
import { MeiliCliError } from "../../lib/errors.js";
|
|
5
5
|
import { isJsonObject, readJsonBody } from "../../lib/input.js";
|
|
6
6
|
import { nextOffsetQuery } from "../../lib/pagination.js";
|
|
7
|
-
export default class
|
|
7
|
+
export default class DocumentList extends BaseCommand {
|
|
8
8
|
static api = "meilisearch";
|
|
9
9
|
static routes = ["POST /indexes/{index_uid}/documents/fetch"];
|
|
10
10
|
static keyActions = ["documents.get"];
|
|
11
|
-
static description =
|
|
11
|
+
static description = `List the documents of an index.
|
|
12
|
+
|
|
13
|
+
--ids or --filter narrow the list.`;
|
|
12
14
|
static examples = [
|
|
13
15
|
"<%= config.bin %> <%= command.id %> --project prod --index movies",
|
|
14
|
-
"<%= config.bin %> <%= command.id %> --project prod --index movies --output json",
|
|
15
16
|
"<%= config.bin %> <%= command.id %> --project prod --index movies --ids 42,1344 --fields id,title",
|
|
16
17
|
"<%= config.bin %> <%= command.id %> --project prod --index movies --filter 'rating > 4' --sort rating:desc",
|
|
17
|
-
"<%= config.bin %> <%= command.id %> --project prod --index movies --all --output ndjson",
|
|
18
18
|
];
|
|
19
19
|
static flags = {
|
|
20
20
|
...BaseCommand.connectionFlags,
|
|
@@ -24,7 +24,6 @@ export default class GetDocuments extends BaseCommand {
|
|
|
24
24
|
helpValue: "<index>",
|
|
25
25
|
}),
|
|
26
26
|
ids: Flags.string({
|
|
27
|
-
aliases: ["id"],
|
|
28
27
|
description: "Document identifiers to return, comma-separated.",
|
|
29
28
|
helpValue: "<ids>",
|
|
30
29
|
}),
|
|
@@ -47,10 +46,10 @@ export default class GetDocuments extends BaseCommand {
|
|
|
47
46
|
...BaseCommand.bodyInputFlags,
|
|
48
47
|
};
|
|
49
48
|
async run() {
|
|
50
|
-
const { flags } = await this.parse(
|
|
49
|
+
const { flags } = await this.parse(DocumentList);
|
|
51
50
|
const given = readJsonBody(flags);
|
|
52
51
|
if (given !== undefined && !isJsonObject(given)) {
|
|
53
|
-
throw new MeiliCliError("cli_input_invalid", "The body of `
|
|
52
|
+
throw new MeiliCliError("cli_input_invalid", "The body of `document list` is the query object of POST /indexes/{index_uid}/documents/fetch, not an array.", { hint: "Pass the identifiers as `--data '{\"ids\":[42,1344]}'` or as `--ids 42,1344`." });
|
|
54
53
|
}
|
|
55
54
|
const query = { ...given };
|
|
56
55
|
if (flags.ids !== undefined)
|
|
@@ -71,4 +70,4 @@ export default class GetDocuments extends BaseCommand {
|
|
|
71
70
|
await this.outputList((page) => fetchDocuments(this.meilisearch, flags.index, { ...rest, ...page }), { limit, offset }, flags.all, nextOffsetQuery);
|
|
72
71
|
}
|
|
73
72
|
}
|
|
74
|
-
//# sourceMappingURL=
|
|
73
|
+
//# sourceMappingURL=list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/document/list.ts"],"names":[],"mappings":"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"}
|