summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/filtered_search/add_extra_tokens_for_merge_requests.js
diff options
context:
space:
mode:
Diffstat (limited to 'app/assets/javascripts/filtered_search/add_extra_tokens_for_merge_requests.js')
-rw-r--r--app/assets/javascripts/filtered_search/add_extra_tokens_for_merge_requests.js60
1 files changed, 47 insertions, 13 deletions
diff --git a/app/assets/javascripts/filtered_search/add_extra_tokens_for_merge_requests.js b/app/assets/javascripts/filtered_search/add_extra_tokens_for_merge_requests.js
index 9440015b32e..80f78c154ee 100644
--- a/app/assets/javascripts/filtered_search/add_extra_tokens_for_merge_requests.js
+++ b/app/assets/javascripts/filtered_search/add_extra_tokens_for_merge_requests.js
@@ -1,21 +1,55 @@
import { __ } from '~/locale';
export default IssuableTokenKeys => {
- const wipToken = {
- formattedKey: __('WIP'),
- key: 'wip',
- type: 'string',
- param: '',
- symbol: '',
- icon: 'admin',
- tag: __('Yes or No'),
- lowercaseValueOnSubmit: true,
- uppercaseTokenName: true,
- capitalizeTokenValue: true,
+ const draftToken = {
+ token: {
+ formattedKey: __('Draft'),
+ key: 'draft',
+ type: 'string',
+ param: '',
+ symbol: '',
+ icon: 'admin',
+ tag: __('Yes or No'),
+ lowercaseValueOnSubmit: true,
+ capitalizeTokenValue: true,
+ },
+ conditions: [
+ {
+ url: 'wip=yes',
+ // eslint-disable-next-line @gitlab/require-i18n-strings
+ replacementUrl: 'draft=yes',
+ tokenKey: 'draft',
+ value: __('Yes'),
+ operator: '=',
+ },
+ {
+ url: 'wip=no',
+ // eslint-disable-next-line @gitlab/require-i18n-strings
+ replacementUrl: 'draft=no',
+ tokenKey: 'draft',
+ value: __('No'),
+ operator: '=',
+ },
+ {
+ url: 'not[wip]=yes',
+ replacementUrl: 'not[draft]=yes',
+ tokenKey: 'draft',
+ value: __('Yes'),
+ operator: '!=',
+ },
+ {
+ url: 'not[wip]=no',
+ replacementUrl: 'not[draft]=no',
+ tokenKey: 'draft',
+ value: __('No'),
+ operator: '!=',
+ },
+ ],
};
- IssuableTokenKeys.tokenKeys.push(wipToken);
- IssuableTokenKeys.tokenKeysWithAlternative.push(wipToken);
+ IssuableTokenKeys.tokenKeys.push(draftToken.token);
+ IssuableTokenKeys.tokenKeysWithAlternative.push(draftToken.token);
+ IssuableTokenKeys.conditions.push(...draftToken.conditions);
const targetBranchToken = {
formattedKey: __('Target-Branch'),