Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions src/CONST/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7342,6 +7342,9 @@ const CONST = {
IS: 'is',
REPORT_FIELD: 'reportField',
EXPORTED_TO: 'exportedTo',
SUBMITTER_USER_ID: 'submitterUserID',
SUBMITTER_PAYROLL_ID: 'submitterPayrollID',
ORDER_DEAL_NUMBERS: 'orderDealNumbers',
},
REPORT_FIELD: {
// All report fields start with this, so use this to check if a search key is a report field
Expand Down Expand Up @@ -7418,6 +7421,9 @@ const CONST = {
IS: 'is',
REPORT_FIELD: 'report-field',
EXPORTED_TO: 'exported-to',
SUBMITTER_USER_ID: 'submitter-user-id',
SUBMITTER_PAYROLL_ID: 'submitter-payroll-id',
ORDER_DEAL_NUMBERS: 'order-deal-numbers',
COLUMNS: 'columns',
LIMIT: 'limit',
},
Expand Down
3 changes: 3 additions & 0 deletions src/components/Search/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -303,6 +303,9 @@ type SearchTextFilterKeys =
| typeof CONST.SEARCH.SYNTAX_FILTER_KEYS.KEYWORD
| typeof CONST.SEARCH.SYNTAX_FILTER_KEYS.TITLE
| typeof CONST.SEARCH.SYNTAX_FILTER_KEYS.WITHDRAWAL_ID
| typeof CONST.SEARCH.SYNTAX_FILTER_KEYS.SUBMITTER_USER_ID
| typeof CONST.SEARCH.SYNTAX_FILTER_KEYS.SUBMITTER_PAYROLL_ID
| typeof CONST.SEARCH.SYNTAX_FILTER_KEYS.ORDER_DEAL_NUMBERS
| typeof CONST.SEARCH.SYNTAX_ROOT_KEYS.LIMIT
| ReportFieldTextKey;

Expand Down
6 changes: 6 additions & 0 deletions src/hooks/useAdvancedSearchFilters.ts
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,9 @@ const typeFiltersKeys = {
CONST.SEARCH.SYNTAX_FILTER_KEYS.RECEIPT_TYPE,
CONST.SEARCH.SYNTAX_FILTER_KEYS.REPORT_ID,
CONST.SEARCH.SYNTAX_FILTER_KEYS.REPORT_FIELD,
CONST.SEARCH.SYNTAX_FILTER_KEYS.SUBMITTER_USER_ID,
CONST.SEARCH.SYNTAX_FILTER_KEYS.SUBMITTER_PAYROLL_ID,
CONST.SEARCH.SYNTAX_FILTER_KEYS.ORDER_DEAL_NUMBERS,
CONST.SEARCH.SYNTAX_FILTER_KEYS.HAS,
CONST.SEARCH.SYNTAX_FILTER_KEYS.KEYWORD,
],
Expand Down Expand Up @@ -89,6 +92,9 @@ const typeFiltersKeys = {
CONST.SEARCH.SYNTAX_FILTER_KEYS.TITLE,
CONST.SEARCH.SYNTAX_FILTER_KEYS.REPORT_ID,
CONST.SEARCH.SYNTAX_FILTER_KEYS.REPORT_FIELD,
CONST.SEARCH.SYNTAX_FILTER_KEYS.SUBMITTER_USER_ID,
CONST.SEARCH.SYNTAX_FILTER_KEYS.SUBMITTER_PAYROLL_ID,
CONST.SEARCH.SYNTAX_FILTER_KEYS.ORDER_DEAL_NUMBERS,
CONST.SEARCH.SYNTAX_FILTER_KEYS.KEYWORD,
],
[CONST.SEARCH.SYNTAX_FILTER_KEYS.SUBMITTED, CONST.SEARCH.SYNTAX_FILTER_KEYS.APPROVED, CONST.SEARCH.SYNTAX_FILTER_KEYS.EXPORTED, CONST.SEARCH.SYNTAX_FILTER_KEYS.PAID],
Expand Down
855 changes: 483 additions & 372 deletions src/libs/SearchParser/autocompleteParser.js

Large diffs are not rendered by default.

3 changes: 3 additions & 0 deletions src/libs/SearchParser/autocompleteParser.peggy
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,9 @@ autocompleteKey "key"
/ reportID
/ withdrawalID
/ title
/ submitterUserID
/ submitterPayrollID
/ orderDealNumbers
/ reportFieldDynamic
/ columns
/ limit
Expand Down
3 changes: 3 additions & 0 deletions src/libs/SearchParser/baseRules.peggy
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,9 @@ groupBy = "groupBy"i / "group-by"i { return "groupBy"; }
limit = "limit"i { return "limit"; }
feed = "feed"i { return "feed"; }
title = "title"i { return "title"; }
submitterUserID = "submitterUserID"i / "submitter-user-id"i { return "submitterUserID"; }
submitterPayrollID = "submitterPayrollID"i / "submitter-payroll-id"i { return "submitterPayrollID"; }
orderDealNumbers = "orderDealNumbers"i / "order-deal-numbers"i { return "orderDealNumbers"; }
Comment thread
JS00001 marked this conversation as resolved.
assignee = "assignee"i { return "assignee"; }
createdBy = "createdBy"i / "created-by"i { return "createdBy"; }
action = "action"i { return "action"; }
Expand Down
873 changes: 492 additions & 381 deletions src/libs/SearchParser/searchParser.js

Large diffs are not rendered by default.

3 changes: 3 additions & 0 deletions src/libs/SearchParser/searchParser.peggy
Original file line number Diff line number Diff line change
Expand Up @@ -290,6 +290,9 @@ key "key"
/ withdrawn
/ feed
/ title
/ submitterUserID
/ submitterPayrollID
/ orderDealNumbers
/ assignee
/ createdBy
/ reimbursable
Expand Down
10 changes: 10 additions & 0 deletions src/libs/SearchQueryUtils.ts
Original file line number Diff line number Diff line change
Expand Up @@ -918,6 +918,9 @@ function buildQueryStringFromFilterFormValues(filterValues: Partial<SearchAdvanc
filterKey === FILTER_KEYS.REIMBURSABLE ||
filterKey === FILTER_KEYS.BILLABLE ||
filterKey === FILTER_KEYS.TITLE ||
filterKey === FILTER_KEYS.SUBMITTER_USER_ID ||
filterKey === FILTER_KEYS.SUBMITTER_PAYROLL_ID ||
filterKey === FILTER_KEYS.ORDER_DEAL_NUMBERS ||
filterKey === FILTER_KEYS.PAYER ||
filterKey === FILTER_KEYS.GROUP_CURRENCY ||
filterKey === FILTER_KEYS.WITHDRAWAL_TYPE ||
Expand Down Expand Up @@ -1319,6 +1322,13 @@ function buildFilterFormValuesFromQuery(
if (filterKey === CONST.SEARCH.SYNTAX_FILTER_KEYS.MERCHANT || filterKey === CONST.SEARCH.SYNTAX_FILTER_KEYS.DESCRIPTION || filterKey === CONST.SEARCH.SYNTAX_FILTER_KEYS.TITLE) {
filtersForm[addNegation(filterKey, isNegated)] = filterValues.join(',');
}
if (
filterKey === CONST.SEARCH.SYNTAX_FILTER_KEYS.SUBMITTER_USER_ID ||
filterKey === CONST.SEARCH.SYNTAX_FILTER_KEYS.SUBMITTER_PAYROLL_ID ||
filterKey === CONST.SEARCH.SYNTAX_FILTER_KEYS.ORDER_DEAL_NUMBERS
) {
filtersForm[addNegation(filterKey, isNegated)] = filterValues.join(',');
}
if (filterKey === CONST.SEARCH.SYNTAX_FILTER_KEYS.ACTION) {
const actionValue = filterValues.join(',');
filtersForm[addNegation(filterKey, isNegated)] =
Expand Down
12 changes: 12 additions & 0 deletions src/libs/SearchUIUtils.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5340,6 +5340,18 @@ const FILTER_VIEW_MAP = {
labelKey: 'common.title',
icon: 'Bookmark',
},
[CONST.SEARCH.SYNTAX_FILTER_KEYS.SUBMITTER_USER_ID]: {
labelKey: 'workspace.common.customField1',
icon: 'Pencil',
},
[CONST.SEARCH.SYNTAX_FILTER_KEYS.SUBMITTER_PAYROLL_ID]: {
labelKey: 'workspace.common.customField2',
icon: 'Pencil',
},
[CONST.SEARCH.SYNTAX_FILTER_KEYS.ORDER_DEAL_NUMBERS]: {
labelKey: 'common.internationalReimbursementIDs',
icon: 'Hashtag',
},
[CONST.SEARCH.SYNTAX_FILTER_KEYS.WITHDRAWAL_ID]: {
labelKey: 'common.withdrawalID',
icon: 'Fingerprint',
Expand Down
33 changes: 33 additions & 0 deletions src/types/form/SearchAdvancedFiltersForm.ts
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,9 @@ const TEXT_FILTER_KEYS = new Set<SearchTextFilterKeys>([
CONST.SEARCH.SYNTAX_FILTER_KEYS.KEYWORD,
CONST.SEARCH.SYNTAX_FILTER_KEYS.TITLE,
CONST.SEARCH.SYNTAX_FILTER_KEYS.WITHDRAWAL_ID,
CONST.SEARCH.SYNTAX_FILTER_KEYS.SUBMITTER_USER_ID,
CONST.SEARCH.SYNTAX_FILTER_KEYS.SUBMITTER_PAYROLL_ID,
CONST.SEARCH.SYNTAX_FILTER_KEYS.ORDER_DEAL_NUMBERS,
CONST.SEARCH.SYNTAX_ROOT_KEYS.LIMIT,
]);

Expand Down Expand Up @@ -192,6 +195,15 @@ const FILTER_KEYS = {
TITLE_NOT: 'titleNot',
TITLE: 'title',

SUBMITTER_USER_ID_NOT: 'submitterUserIDNot',
SUBMITTER_USER_ID: 'submitterUserID',

SUBMITTER_PAYROLL_ID_NOT: 'submitterPayrollIDNot',
SUBMITTER_PAYROLL_ID: 'submitterPayrollID',

ORDER_DEAL_NUMBERS_NOT: 'orderDealNumbersNot',
ORDER_DEAL_NUMBERS: 'orderDealNumbers',
Comment on lines +198 to +205

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@c3024 Are we supporting all these keys?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes.


ASSIGNEE_NOT: 'assigneeNot',
ASSIGNEE: 'assignee',

Expand Down Expand Up @@ -340,6 +352,12 @@ const ALLOWED_TYPE_FILTERS: Record<string, Set<string>> = {
FILTER_KEYS.WITHDRAWAL_ID_NOT,
FILTER_KEYS.TITLE,
FILTER_KEYS.TITLE_NOT,
FILTER_KEYS.SUBMITTER_USER_ID,
FILTER_KEYS.SUBMITTER_USER_ID_NOT,
FILTER_KEYS.SUBMITTER_PAYROLL_ID,
FILTER_KEYS.SUBMITTER_PAYROLL_ID_NOT,
FILTER_KEYS.ORDER_DEAL_NUMBERS,
FILTER_KEYS.ORDER_DEAL_NUMBERS_NOT,
FILTER_KEYS.ATTENDEE,
FILTER_KEYS.REPORT_FIELD,
FILTER_KEYS.ATTENDEE_NOT,
Expand Down Expand Up @@ -413,6 +431,12 @@ const ALLOWED_TYPE_FILTERS: Record<string, Set<string>> = {
FILTER_KEYS.WITHDRAWAL_ID_NOT,
FILTER_KEYS.TITLE,
FILTER_KEYS.TITLE_NOT,
FILTER_KEYS.SUBMITTER_USER_ID,
FILTER_KEYS.SUBMITTER_USER_ID_NOT,
FILTER_KEYS.SUBMITTER_PAYROLL_ID,
FILTER_KEYS.SUBMITTER_PAYROLL_ID_NOT,
FILTER_KEYS.ORDER_DEAL_NUMBERS,
FILTER_KEYS.ORDER_DEAL_NUMBERS_NOT,
FILTER_KEYS.REPORT_FIELD,
FILTER_KEYS.COLUMNS,
]),
Expand Down Expand Up @@ -792,6 +816,15 @@ type SearchAdvancedFiltersForm = Form<
[FILTER_KEYS.TITLE]: string;
[FILTER_KEYS.TITLE_NOT]: string;

[FILTER_KEYS.SUBMITTER_USER_ID]: string;
[FILTER_KEYS.SUBMITTER_USER_ID_NOT]: string;

[FILTER_KEYS.SUBMITTER_PAYROLL_ID]: string;
[FILTER_KEYS.SUBMITTER_PAYROLL_ID_NOT]: string;

[FILTER_KEYS.ORDER_DEAL_NUMBERS]: string;
[FILTER_KEYS.ORDER_DEAL_NUMBERS_NOT]: string;

[FILTER_KEYS.ASSIGNEE]: string[];
[FILTER_KEYS.ASSIGNEE_NOT]: string[];

Expand Down
Loading