@meilisearch/cli 0.0.0-stage → 0.0.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.
Files changed (161) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +72 -2
  3. package/bin/run.js +15 -0
  4. package/dist/commands/add/documents.js +54 -0
  5. package/dist/commands/add/documents.js.map +1 -0
  6. package/dist/commands/add/indexes.js +39 -0
  7. package/dist/commands/add/indexes.js.map +1 -0
  8. package/dist/commands/add/keys.js +63 -0
  9. package/dist/commands/add/keys.js.map +1 -0
  10. package/dist/commands/add/projects.js +96 -0
  11. package/dist/commands/add/projects.js.map +1 -0
  12. package/dist/commands/auth/login.js +26 -0
  13. package/dist/commands/auth/login.js.map +1 -0
  14. package/dist/commands/auth/logout.js +31 -0
  15. package/dist/commands/auth/logout.js.map +1 -0
  16. package/dist/commands/auth/refresh.js +22 -0
  17. package/dist/commands/auth/refresh.js.map +1 -0
  18. package/dist/commands/auth/status.js +34 -0
  19. package/dist/commands/auth/status.js.map +1 -0
  20. package/dist/commands/cancel/tasks.js +24 -0
  21. package/dist/commands/cancel/tasks.js.map +1 -0
  22. package/dist/commands/config/list.js +18 -0
  23. package/dist/commands/config/list.js.map +1 -0
  24. package/dist/commands/config/set.js +48 -0
  25. package/dist/commands/config/set.js.map +1 -0
  26. package/dist/commands/config/sync-with-cloud.js +144 -0
  27. package/dist/commands/config/sync-with-cloud.js.map +1 -0
  28. package/dist/commands/config/unset.js +28 -0
  29. package/dist/commands/config/unset.js.map +1 -0
  30. package/dist/commands/config/update.js +53 -0
  31. package/dist/commands/config/update.js.map +1 -0
  32. package/dist/commands/delete/documents.js +81 -0
  33. package/dist/commands/delete/documents.js.map +1 -0
  34. package/dist/commands/delete/indexes.js +28 -0
  35. package/dist/commands/delete/indexes.js.map +1 -0
  36. package/dist/commands/delete/keys.js +28 -0
  37. package/dist/commands/delete/keys.js.map +1 -0
  38. package/dist/commands/delete/projects.js +40 -0
  39. package/dist/commands/delete/projects.js.map +1 -0
  40. package/dist/commands/delete/settings.js +28 -0
  41. package/dist/commands/delete/settings.js.map +1 -0
  42. package/dist/commands/delete/tasks.js +34 -0
  43. package/dist/commands/delete/tasks.js.map +1 -0
  44. package/dist/commands/export.js +67 -0
  45. package/dist/commands/export.js.map +1 -0
  46. package/dist/commands/facet-search.js +87 -0
  47. package/dist/commands/facet-search.js.map +1 -0
  48. package/dist/commands/get/batches.js +35 -0
  49. package/dist/commands/get/batches.js.map +1 -0
  50. package/dist/commands/get/documents.js +74 -0
  51. package/dist/commands/get/documents.js.map +1 -0
  52. package/dist/commands/get/health.js +17 -0
  53. package/dist/commands/get/health.js.map +1 -0
  54. package/dist/commands/get/indexes.js +33 -0
  55. package/dist/commands/get/indexes.js.map +1 -0
  56. package/dist/commands/get/keys.js +36 -0
  57. package/dist/commands/get/keys.js.map +1 -0
  58. package/dist/commands/get/projects.js +40 -0
  59. package/dist/commands/get/projects.js.map +1 -0
  60. package/dist/commands/get/settings.js +25 -0
  61. package/dist/commands/get/settings.js.map +1 -0
  62. package/dist/commands/get/stats.js +37 -0
  63. package/dist/commands/get/stats.js.map +1 -0
  64. package/dist/commands/get/tasks.js +35 -0
  65. package/dist/commands/get/tasks.js.map +1 -0
  66. package/dist/commands/get/version.js +16 -0
  67. package/dist/commands/get/version.js.map +1 -0
  68. package/dist/commands/multi-search.js +39 -0
  69. package/dist/commands/multi-search.js.map +1 -0
  70. package/dist/commands/schema.js +95 -0
  71. package/dist/commands/schema.js.map +1 -0
  72. package/dist/commands/search.js +164 -0
  73. package/dist/commands/search.js.map +1 -0
  74. package/dist/commands/similar.js +86 -0
  75. package/dist/commands/similar.js.map +1 -0
  76. package/dist/commands/teleport.js +466 -0
  77. package/dist/commands/teleport.js.map +1 -0
  78. package/dist/commands/update/documents.js +56 -0
  79. package/dist/commands/update/documents.js.map +1 -0
  80. package/dist/commands/update/indexes.js +44 -0
  81. package/dist/commands/update/indexes.js.map +1 -0
  82. package/dist/commands/update/keys.js +42 -0
  83. package/dist/commands/update/keys.js.map +1 -0
  84. package/dist/commands/update/projects.js +62 -0
  85. package/dist/commands/update/projects.js.map +1 -0
  86. package/dist/commands/update/settings.js +145 -0
  87. package/dist/commands/update/settings.js.map +1 -0
  88. package/dist/lib/api-naming.js +435 -0
  89. package/dist/lib/api-naming.js.map +1 -0
  90. package/dist/lib/base-command.js +285 -0
  91. package/dist/lib/base-command.js.map +1 -0
  92. package/dist/lib/clients/management/generated/client/client.gen.js +217 -0
  93. package/dist/lib/clients/management/generated/client/client.gen.js.map +1 -0
  94. package/dist/lib/clients/management/generated/client/index.js +7 -0
  95. package/dist/lib/clients/management/generated/client/index.js.map +1 -0
  96. package/dist/lib/clients/management/generated/client/types.gen.js +3 -0
  97. package/dist/lib/clients/management/generated/client/types.gen.js.map +1 -0
  98. package/dist/lib/clients/management/generated/client/utils.gen.js +229 -0
  99. package/dist/lib/clients/management/generated/client/utils.gen.js.map +1 -0
  100. package/dist/lib/clients/management/generated/client.gen.js +4 -0
  101. package/dist/lib/clients/management/generated/client.gen.js.map +1 -0
  102. package/dist/lib/clients/management/generated/core/auth.gen.js +15 -0
  103. package/dist/lib/clients/management/generated/core/auth.gen.js.map +1 -0
  104. package/dist/lib/clients/management/generated/core/bodySerializer.gen.js +58 -0
  105. package/dist/lib/clients/management/generated/core/bodySerializer.gen.js.map +1 -0
  106. package/dist/lib/clients/management/generated/core/params.gen.js +110 -0
  107. package/dist/lib/clients/management/generated/core/params.gen.js.map +1 -0
  108. package/dist/lib/clients/management/generated/core/pathSerializer.gen.js +107 -0
  109. package/dist/lib/clients/management/generated/core/pathSerializer.gen.js.map +1 -0
  110. package/dist/lib/clients/management/generated/core/queryKeySerializer.gen.js +93 -0
  111. package/dist/lib/clients/management/generated/core/queryKeySerializer.gen.js.map +1 -0
  112. package/dist/lib/clients/management/generated/core/serverSentEvents.gen.js +133 -0
  113. package/dist/lib/clients/management/generated/core/serverSentEvents.gen.js.map +1 -0
  114. package/dist/lib/clients/management/generated/core/types.gen.js +3 -0
  115. package/dist/lib/clients/management/generated/core/types.gen.js.map +1 -0
  116. package/dist/lib/clients/management/generated/core/utils.gen.js +88 -0
  117. package/dist/lib/clients/management/generated/core/utils.gen.js.map +1 -0
  118. package/dist/lib/clients/management/generated/index.js +3 -0
  119. package/dist/lib/clients/management/generated/index.js.map +1 -0
  120. package/dist/lib/clients/management/generated/sdk.gen.js +398 -0
  121. package/dist/lib/clients/management/generated/sdk.gen.js.map +1 -0
  122. package/dist/lib/clients/management/generated/types.gen.js +3 -0
  123. package/dist/lib/clients/management/generated/types.gen.js.map +1 -0
  124. package/dist/lib/clients/management.js +21 -0
  125. package/dist/lib/clients/management.js.map +1 -0
  126. package/dist/lib/clients/meilisearch.js +69 -0
  127. package/dist/lib/clients/meilisearch.js.map +1 -0
  128. package/dist/lib/clients/oauth.js +225 -0
  129. package/dist/lib/clients/oauth.js.map +1 -0
  130. package/dist/lib/clients/ping.js +26 -0
  131. package/dist/lib/clients/ping.js.map +1 -0
  132. package/dist/lib/clients/trace.js +69 -0
  133. package/dist/lib/clients/trace.js.map +1 -0
  134. package/dist/lib/cloud-sync.js +113 -0
  135. package/dist/lib/cloud-sync.js.map +1 -0
  136. package/dist/lib/config.js +317 -0
  137. package/dist/lib/config.js.map +1 -0
  138. package/dist/lib/errors.js +302 -0
  139. package/dist/lib/errors.js.map +1 -0
  140. package/dist/lib/help.js +37 -0
  141. package/dist/lib/help.js.map +1 -0
  142. package/dist/lib/input.js +76 -0
  143. package/dist/lib/input.js.map +1 -0
  144. package/dist/lib/login.js +43 -0
  145. package/dist/lib/login.js.map +1 -0
  146. package/dist/lib/output.js +39 -0
  147. package/dist/lib/output.js.map +1 -0
  148. package/dist/lib/pagination.js +52 -0
  149. package/dist/lib/pagination.js.map +1 -0
  150. package/dist/lib/session.js +149 -0
  151. package/dist/lib/session.js.map +1 -0
  152. package/dist/lib/task-filters.js +118 -0
  153. package/dist/lib/task-filters.js.map +1 -0
  154. package/dist/lib/tasks.js +64 -0
  155. package/dist/lib/tasks.js.map +1 -0
  156. package/dist/lib/terminal.js +146 -0
  157. package/dist/lib/terminal.js.map +1 -0
  158. package/dist/lib/values.js +48 -0
  159. package/dist/lib/values.js.map +1 -0
  160. package/oclif.manifest.json +10470 -0
  161. package/package.json +81 -4
@@ -0,0 +1,42 @@
1
+ import { Flags } from "@oclif/core";
2
+ import { BaseCommand } from "../../lib/base-command.js";
3
+ import { readBodyWithFields } from "../../lib/input.js";
4
+ import { asText } from "../../lib/values.js";
5
+ export default class UpdateKeys extends BaseCommand {
6
+ static api = "meilisearch";
7
+ static routes = ["PATCH /keys/{key}"];
8
+ static keyActions = ["keys.update"];
9
+ static description = "Change the name or the description of an API key, the two fields the route takes, and reset one with the value null.";
10
+ static examples = [
11
+ "<%= config.bin %> <%= command.id %> --project prod --id 52787ccd-48ff-48e5-9c4b-03cd76978a60 --name 'CI indexer'",
12
+ "<%= config.bin %> <%= command.id %> --project prod --id 52787ccd-48ff-48e5-9c4b-03cd76978a60 --description 'Indexes the catalog nightly' --output json",
13
+ "<%= config.bin %> <%= command.id %> --project prod --id 52787ccd-48ff-48e5-9c4b-03cd76978a60 --description null",
14
+ ];
15
+ static flags = {
16
+ ...BaseCommand.connectionFlags,
17
+ id: Flags.string({
18
+ required: true,
19
+ description: "The key to update, by its uid or by its key value.",
20
+ helpValue: "<key>",
21
+ }),
22
+ name: Flags.string({
23
+ description: "New name of the key. The value null removes the one it has.",
24
+ helpValue: "<name>",
25
+ }),
26
+ description: Flags.string({
27
+ description: "New description of the key. The value null removes the one it has.",
28
+ helpValue: "<text>",
29
+ }),
30
+ ...BaseCommand.bodyInputFlags,
31
+ };
32
+ async run() {
33
+ const { flags } = await this.parse(UpdateKeys);
34
+ const fromFlags = {
35
+ name: asText(flags.name),
36
+ description: asText(flags.description),
37
+ };
38
+ const update = readBodyWithFields(flags, fromFlags);
39
+ await this.output(await this.meilisearch.updateKey(flags.id, update));
40
+ }
41
+ }
42
+ //# sourceMappingURL=keys.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keys.js","sourceRoot":"","sources":["../../../src/commands/update/keys.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAY,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,WAAW;IACjD,MAAM,CAAC,GAAG,GAAQ,aAAa,CAAC;IAEhC,MAAM,CAAC,MAAM,GAAG,CAAC,mBAAmB,CAAC,CAAC;IAEtC,MAAM,CAAC,UAAU,GAAG,CAAC,aAAa,CAAC,CAAC;IAEpC,MAAM,CAAU,WAAW,GACzB,sHAAsH,CAAC;IAEzH,MAAM,CAAU,QAAQ,GAAG;QACzB,kHAAkH;QAClH,wJAAwJ;QACxJ,iHAAiH;KAClH,CAAC;IAEF,MAAM,CAAU,KAAK,GAAG;QACtB,GAAG,WAAW,CAAC,eAAe;QAC9B,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC;YACf,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,oDAAoD;YACjE,SAAS,EAAE,OAAO;SACnB,CAAC;QACF,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC;YACjB,WAAW,EAAE,6DAA6D;YAC1E,SAAS,EAAE,QAAQ;SACpB,CAAC;QACF,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC;YACxB,WAAW,EAAE,oEAAoE;YACjF,SAAS,EAAE,QAAQ;SACpB,CAAC;QACF,GAAG,WAAW,CAAC,cAAc;KAC9B,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC/C,MAAM,SAAS,GAA4B;YACzC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;YACxB,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC;SACvC,CAAC;QACF,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,EAAE,SAAS,CAAc,CAAC;QACjE,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;IACxE,CAAC;CACF"}
@@ -0,0 +1,62 @@
1
+ import { Flags } from "@oclif/core";
2
+ import { BaseCommand } from "../../lib/base-command.js";
3
+ import { patchApiV2ProjectsById } from "../../lib/clients/management/generated/sdk.gen.js";
4
+ import { cloudOf, readTeamNames } from "../../lib/cloud-sync.js";
5
+ import { assertNoProject, cloudProjectEntry, writeConfigFile, } from "../../lib/config.js";
6
+ import { MeiliCliError } from "../../lib/errors.js";
7
+ import { readBodyWithFields } from "../../lib/input.js";
8
+ export default class UpdateProjects extends BaseCommand {
9
+ static api = "management";
10
+ static routes = ["PATCH /api/v2/projects/{id}"];
11
+ static description = "Rename a Meilisearch Cloud project.";
12
+ static examples = [
13
+ "<%= config.bin %> <%= command.id %> --id 343 --name renamed",
14
+ "<%= config.bin %> <%= command.id %> --id 343 --name renamed --output json",
15
+ "<%= config.bin %> <%= command.id %> --project prod --name renamed",
16
+ "<%= config.bin %> <%= command.id %> --project prod --name renamed --sync-config",
17
+ '<%= config.bin %> <%= command.id %> --id 343 --data \'{"name":"renamed"}\'',
18
+ ];
19
+ static flags = {
20
+ ...BaseCommand.cloudProjectFlags,
21
+ id: Flags.integer({
22
+ description: "The project to update, or give --project <name> and its cloud.id from the config file.",
23
+ helpValue: "<id>",
24
+ }),
25
+ name: Flags.string({ description: "New name of the project.", helpValue: "<name>" }),
26
+ "sync-config": Flags.boolean({
27
+ description: "Rename the project's entry of the config file after it: the entry --project names, or the one whose cloud.id is --id. Refreshes its cloud identifiers.",
28
+ }),
29
+ ...BaseCommand.bodyInputFlags,
30
+ };
31
+ async run() {
32
+ const { flags } = await this.parse(UpdateProjects);
33
+ const id = this.cloudProjectId(flags.id);
34
+ const body = readBodyWithFields(flags, { name: flags.name });
35
+ // The entry takes the name checked here, whatever name the API answers.
36
+ let sync;
37
+ if (flags["sync-config"]) {
38
+ if (typeof body.name !== "string" || body.name === "") {
39
+ throw new MeiliCliError("cli_usage", "`--sync-config` renames the entry after the project: give `--name`.");
40
+ }
41
+ const file = this.configFile();
42
+ const entry = cloudProjectEntry(file, flags.project, id, ": nothing was renamed.");
43
+ if (body.name !== entry)
44
+ assertNoProject(file, body.name, ": nothing was renamed.");
45
+ sync = { file, entry, name: body.name };
46
+ }
47
+ const project = await patchApiV2ProjectsById({
48
+ client: this.managementClient,
49
+ path: { id },
50
+ body,
51
+ });
52
+ await this.output(project);
53
+ if (sync === undefined)
54
+ return;
55
+ const cloud = cloudOf(project, await readTeamNames(this.managementClient));
56
+ writeConfigFile({
57
+ path: sync.file.path,
58
+ projects: Object.fromEntries(Object.entries(sync.file.projects).map(([name, entry]) => name === sync.entry ? [sync.name, { ...entry, cloud }] : [name, entry])),
59
+ });
60
+ }
61
+ }
62
+ //# sourceMappingURL=projects.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projects.js","sourceRoot":"","sources":["../../../src/commands/update/projects.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,145 @@
1
+ import { Flags } from "@oclif/core";
2
+ import { BaseCommand } from "../../lib/base-command.js";
3
+ import { readBodyWithFields } from "../../lib/input.js";
4
+ import { asJson, asList, asNumber, asText } from "../../lib/values.js";
5
+ export default class UpdateSettings extends BaseCommand {
6
+ static api = "meilisearch";
7
+ static routes = ["PATCH /indexes/{index_uid}/settings"];
8
+ static keyActions = ["settings.update"];
9
+ static description = "Change the settings given, leave the others as they are, and reset one with the value null.";
10
+ static examples = [
11
+ "<%= config.bin %> <%= command.id %> --project prod --index movies --searchable-attributes title,overview",
12
+ "<%= config.bin %> <%= command.id %> --project prod --index movies --filterable-attributes genres,release_date --output json",
13
+ "<%= config.bin %> <%= command.id %> --project prod --index movies --stop-words null",
14
+ "<%= config.bin %> <%= command.id %> --project prod --index movies --typo-tolerance '{\"enabled\":false}' --wait",
15
+ "<%= config.bin %> <%= command.id %> --project prod --index movies --file settings.json",
16
+ ];
17
+ static flags = {
18
+ ...BaseCommand.connectionFlags,
19
+ index: Flags.string({
20
+ required: true,
21
+ description: "The index to update the settings of.",
22
+ helpValue: "<index>",
23
+ }),
24
+ "displayed-attributes": Flags.string({
25
+ description: "Fields returned in search results, comma-separated.",
26
+ helpValue: "<fields>",
27
+ }),
28
+ "searchable-attributes": Flags.string({
29
+ description: "Fields searched for query words, comma-separated, in order of importance for the ranking.",
30
+ helpValue: "<fields>",
31
+ }),
32
+ "filterable-attributes": Flags.string({
33
+ description: "Attributes usable as filters and facets, comma-separated. Their rule form goes through --data.",
34
+ helpValue: "<fields>",
35
+ }),
36
+ "sortable-attributes": Flags.string({
37
+ description: "Attributes usable to sort the search results, comma-separated.",
38
+ helpValue: "<fields>",
39
+ }),
40
+ "foreign-keys": Flags.string({
41
+ description: 'Foreign keys for cross-index filtering, as JSON: `[{"foreignIndexUid":"products","fieldName":"productId"}]`.',
42
+ helpValue: "<json>",
43
+ }),
44
+ "ranking-rules": Flags.string({
45
+ description: "Ranking rules in order of importance, comma-separated, built-in or `attribute:asc` and `:desc`.",
46
+ helpValue: "<rules>",
47
+ }),
48
+ "stop-words": Flags.string({
49
+ description: "Words ignored when they appear in a search query, comma-separated.",
50
+ helpValue: "<words>",
51
+ }),
52
+ "non-separator-tokens": Flags.string({
53
+ description: "Characters removed from the default separators, comma-separated, so that they no longer split words.",
54
+ helpValue: "<tokens>",
55
+ }),
56
+ "separator-tokens": Flags.string({
57
+ description: "Characters added to the default separators, comma-separated.",
58
+ helpValue: "<tokens>",
59
+ }),
60
+ dictionary: Flags.string({
61
+ description: "Strings parsed as a single term, comma-separated, such as names.",
62
+ helpValue: "<words>",
63
+ }),
64
+ synonyms: Flags.string({
65
+ description: 'Words treated as equivalent, as JSON: `{"phone":["iPhone"]}`.',
66
+ helpValue: "<json>",
67
+ }),
68
+ "distinct-attribute": Flags.string({
69
+ description: "Field whose value must be unique in the returned documents.",
70
+ helpValue: "<attribute>",
71
+ }),
72
+ "proximity-precision": Flags.string({
73
+ description: "Precision of the proximity ranking rule, `byWord` or `byAttribute`, which indexes faster.",
74
+ helpValue: "<precision>",
75
+ }),
76
+ "typo-tolerance": Flags.string({
77
+ description: 'Typo tolerance as JSON, for example `{"enabled":false}`.',
78
+ helpValue: "<json>",
79
+ }),
80
+ faceting: Flags.string({
81
+ description: 'Faceting as JSON, for example `{"maxValuesPerFacet":200}`.',
82
+ helpValue: "<json>",
83
+ }),
84
+ pagination: Flags.string({
85
+ description: 'Pagination as JSON, for example `{"maxTotalHits":2000}`.',
86
+ helpValue: "<json>",
87
+ }),
88
+ embedders: Flags.string({
89
+ description: 'Embedders as JSON, a map of name to configuration: `{"default":{"source":"openAi"}}`.',
90
+ helpValue: "<json>",
91
+ }),
92
+ "search-cutoff-ms": Flags.string({
93
+ description: "Maximum duration of a search in milliseconds, 1500 when it is null.",
94
+ helpValue: "<ms>",
95
+ }),
96
+ "localized-attributes": Flags.string({
97
+ description: 'Locales of the attributes, as JSON: `[{"locales":["jpn"],"attributePatterns":["*_ja"]}]`.',
98
+ helpValue: "<json>",
99
+ }),
100
+ "facet-search": Flags.string({
101
+ description: "Whether the facet-search route is enabled on this index, `true` or `false`.",
102
+ helpValue: "<boolean>",
103
+ }),
104
+ "prefix-search": Flags.string({
105
+ description: "When prefix matches are computed, `indexingTime` or `disabled`, which indexes faster.",
106
+ helpValue: "<mode>",
107
+ }),
108
+ chat: Flags.string({
109
+ description: 'Chat settings as JSON, for example `{"description":"A movie database"}`, which the LLM reads.',
110
+ helpValue: "<json>",
111
+ }),
112
+ ...BaseCommand.bodyInputFlags,
113
+ ...BaseCommand.waitFlags,
114
+ };
115
+ async run() {
116
+ const { flags } = await this.parse(UpdateSettings);
117
+ const fromFlags = {
118
+ displayedAttributes: asList(flags["displayed-attributes"]),
119
+ searchableAttributes: asList(flags["searchable-attributes"]),
120
+ filterableAttributes: asList(flags["filterable-attributes"]),
121
+ sortableAttributes: asList(flags["sortable-attributes"]),
122
+ foreignKeys: asJson(flags["foreign-keys"]),
123
+ rankingRules: asList(flags["ranking-rules"]),
124
+ stopWords: asList(flags["stop-words"]),
125
+ nonSeparatorTokens: asList(flags["non-separator-tokens"]),
126
+ separatorTokens: asList(flags["separator-tokens"]),
127
+ dictionary: asList(flags.dictionary),
128
+ synonyms: asJson(flags.synonyms),
129
+ distinctAttribute: asText(flags["distinct-attribute"]),
130
+ proximityPrecision: asText(flags["proximity-precision"]),
131
+ typoTolerance: asJson(flags["typo-tolerance"]),
132
+ faceting: asJson(flags.faceting),
133
+ pagination: asJson(flags.pagination),
134
+ embedders: asJson(flags.embedders),
135
+ searchCutoffMs: asNumber(flags["search-cutoff-ms"]),
136
+ localizedAttributes: asJson(flags["localized-attributes"]),
137
+ facetSearch: asJson(flags["facet-search"]),
138
+ prefixSearch: asText(flags["prefix-search"]),
139
+ chat: asJson(flags.chat),
140
+ };
141
+ const settings = readBodyWithFields(flags, fromFlags);
142
+ await this.outputTask(await this.meilisearch.index(flags.index).updateSettings(settings), flags);
143
+ }
144
+ }
145
+ //# sourceMappingURL=settings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../src/commands/update/settings.ts"],"names":[],"mappings":"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"}