diff --git a/.github/actions/spelling/expect.txt b/.github/actions/spelling/expect.txt
index 77f44eb92..e127cadf4 100644
--- a/.github/actions/spelling/expect.txt
+++ b/.github/actions/spelling/expect.txt
@@ -490,7 +490,6 @@ MUAs
MULTIAPPEND
multiscript
murchison
-mutltiple
muttmua
Muttrc
mybox
@@ -711,6 +710,7 @@ showcerts
showq
sievec
sievemailinglist
+singleval
slashdot
smartsieve
smbfs
@@ -849,7 +849,6 @@ unpriv
unsubscribable
unsubscriptions
uoff
-Uou
uppercased
uppercasing
upperfirst
diff --git a/.vitepress/theme/custom.css b/.vitepress/theme/custom.css
index 381c94959..151cf85a2 100644
--- a/.vitepress/theme/custom.css
+++ b/.vitepress/theme/custom.css
@@ -37,7 +37,7 @@
}
section.VPSidebarItem.level-0:not(.collapsible) {
- padding-bottom: 12px !important;
+ padding-bottom: 12px !important;
}
.VPNavBar.has-sidebar .content {
diff --git a/components/DoveadmCliComponent.vue b/components/DoveadmCliComponent.vue
index ed08c8417..c05876bfe 100644
--- a/components/DoveadmCliComponent.vue
+++ b/components/DoveadmCliComponent.vue
@@ -26,7 +26,10 @@ const d = computed(() => props.data)
- {{ elem.flag }} |
+
+ {{ elem.flag }}
+ single value
+ |
{{ elem.type }} |
|
{{ JSON.stringify(elem.example) }} |
diff --git a/components/DoveadmHttpApiComponent.vue b/components/DoveadmHttpApiComponent.vue
index 3a4571fc0..fe8dd27e0 100644
--- a/components/DoveadmHttpApiComponent.vue
+++ b/components/DoveadmHttpApiComponent.vue
@@ -69,7 +69,10 @@ const examples = computed(() => {
- {{ elem.param }} |
+
+ {{ elem.param }}
+ single value
+ |
{{ elem.type }} |
|
{{ JSON.stringify(elem.example) }} |
diff --git a/data/doveadm.js b/data/doveadm.js
index 1fd70cd61..d35d1af16 100644
--- a/data/doveadm.js
+++ b/data/doveadm.js
@@ -315,8 +315,8 @@ Applicable to [[link,mdbox]] and [[link,sdbox]] mailbox formats only.
user: {
example: 'username',
positional: true,
- type: doveadm_arg_types.STRING,
- text: `Login UID.`,
+ type: doveadm_arg_types.STRING_SINGLEVAL,
+ text: `The user to add.`,
},
password: {
example: `password`,
@@ -354,8 +354,8 @@ Applicable to [[link,mdbox]] and [[link,sdbox]] mailbox formats only.
user: {
example: 'username',
positional: true,
- type: doveadm_arg_types.ARRAY,
- text: `UID of user to query.`,
+ type: doveadm_arg_types.STRING_SINGLEVAL,
+ text: `Login UID.`,
},
},
man: 'doveadm-auth',
@@ -391,8 +391,8 @@ Applicable to [[link,mdbox]] and [[link,sdbox]] mailbox formats only.
user: {
example: 'username',
positional: true,
- type: doveadm_arg_types.STRING,
- text: `Login UID.`
+ type: doveadm_arg_types.STRING_SINGLEVAL,
+ text: `Login UID.`,
},
password: {
example: `password`,
@@ -718,7 +718,7 @@ the source user name, e.g., \`user sourceuser\`.`
user: {
cli: 'u',
example: 'username',
- type: doveadm_arg_types.STRING,
+ type: doveadm_arg_types.STRING_SINGLEVAL,
text: `uid of user to query.`,
},
'dict-uri': {
@@ -743,7 +743,7 @@ the source user name, e.g., \`user sourceuser\`.`
user: {
cli: 'u',
example: 'username',
- type: doveadm_arg_types.STRING,
+ type: doveadm_arg_types.STRING_SINGLEVAL,
text: `uid of user to modify.`,
},
'dict-uri': {
@@ -774,8 +774,8 @@ the source user name, e.g., \`user sourceuser\`.`
user: {
cli: 'u',
example: 'username',
- type: doveadm_arg_types.STRING,
- text: `uid of user to query.`,
+ type: doveadm_arg_types.STRING_SINGLEVAL,
+ text: `Username to use for schemes that require one.`,
},
exact: {
cli: '1',
@@ -814,7 +814,7 @@ the source user name, e.g., \`user sourceuser\`.`
user: {
cli: 'u',
example: 'username',
- type: doveadm_arg_types.STRING,
+ type: doveadm_arg_types.STRING_SINGLEVAL,
text: `uid of user to query.`,
},
'dict-uri': {
@@ -844,7 +844,7 @@ the source user name, e.g., \`user sourceuser\`.`
args: {
user: {
example: 'username',
- type: doveadm_arg_types.STRING,
+ type: doveadm_arg_types.STRING_SINGLEVAL,
text: `uid of user to query.`,
},
'dict-uri': {
@@ -1485,8 +1485,8 @@ For each mailbox that has FTS data, it outputs the following key/value fields:
user: {
example: 'username',
positional: true,
- type: doveadm_arg_types.STRING,
- text: `The user to add.`,
+ type: doveadm_arg_types.STRING_SINGLEVAL,
+ text: `UID of user to query.`,
},
mailbox: {
example: 'INBOX',
@@ -2539,8 +2539,8 @@ returned.`,
user: {
cli: 'u',
example: 'username',
- type: doveadm_arg_types.STRING,
- text: `Username to use for schemes that require one.`,
+ type: doveadm_arg_types.STRING_SINGLEVAL,
+ text: `uid of user to query.`,
},
'reverse-verify': {
cli: 'V',
diff --git a/lib/doveadm.js b/lib/doveadm.js
index a24882400..091bb25e7 100644
--- a/lib/doveadm.js
+++ b/lib/doveadm.js
@@ -12,6 +12,7 @@ export const doveadm_arg_types = {
STRING: 4,
SEARCH_QUERY: 5, // Search query is an ARG_ARRAY
ISTREAM: 6,
+ STRING_SINGLEVAL: 7,
}
/* List of Doveadm flag value types. */
@@ -91,7 +92,7 @@ const doveadm_userargs = {
user: {
cli: 'u',
example: 'username',
- type: doveadm_arg_types.STRING,
+ type: doveadm_arg_types.STRING_SINGLEVAL,
text: `UID of user to apply operation to.`,
},
}
@@ -124,6 +125,8 @@ function typeToString(type) {
return 'search_query'
case doveadm_arg_types.ISTREAM:
return 'istream'
+ case doveadm_arg_types.STRING_SINGLEVAL:
+ return 'string'
}
}
@@ -199,6 +202,7 @@ async function normalizeDoveadm(doveadm) {
example: v2.example,
flag: v2.cli ? '-' + v2.cli : (v2.positional ? k2 : '--' + k2),
param: argToHttpParam(k2),
+ singleval: v2.type === doveadm_arg_types.STRING_SINGLEVAL,
type: typeToString(v2.type),
text: v2.text ? md.render(v2.text) : null
})