Support absolute date operator type

Summary: Project doc: https://docs.google.com/document/d/1miofxds9DJgWScj0zFyBbdpRH5Rj0T9FqiCapof5-vU

Reviewed By: lblasa

Differential Revision: D48644510

fbshipit-source-id: 0a1a382f3052c0e1e1f78ad6e8c51211fb78f9ce
This commit is contained in:
Andrey Goncharov
2023-08-30 07:26:35 -07:00
committed by Facebook GitHub Bot
parent 7b9ddb617f
commit cb6dd36dc1
6 changed files with 124 additions and 5 deletions

View File

@@ -9,7 +9,13 @@
import {CloseOutlined} from '@ant-design/icons';
import {Button, Space} from 'antd';
import dayjs from 'dayjs';
import * as React from 'react';
import {
DATE_ONLY_FORMAT,
DATE_TIME_FORMAT,
PowerSearchAbsoluteDateTerm,
} from './PowerSearchAbsoluteDateTerm';
import {FieldConfig, OperatorConfig} from './PowerSearchConfig';
import {PowerSearchEnumTerm} from './PowerSearchEnumTerm';
import {PowerSearchFloatTerm} from './PowerSearchFloatTerm';
@@ -101,10 +107,26 @@ export const PowerSearchTerm: React.FC<PowerSearchTermProps> = ({
);
break;
}
case 'ABSOLUTE_DATE': {
searchValueComponent = (
<PowerSearchAbsoluteDateTerm
onCancel={onCancel}
onChange={(newValue) => {
onFinalize({
...searchTerm,
searchValue: newValue,
});
}}
minValue={searchTerm.operator.minValue}
maxValue={searchTerm.operator.maxValue}
dateOnly={searchTerm.operator.dateOnly}
/>
);
break;
}
default: {
console.error(
'PowerSearchTerm -> unknownoperator.valueType',
searchTerm.operator.valueType,
'PowerSearchTerm -> unknown operator.valueType',
searchTerm,
);
}
@@ -119,6 +141,16 @@ export const PowerSearchTerm: React.FC<PowerSearchTermProps> = ({
);
break;
}
case 'ABSOLUTE_DATE': {
searchValueComponent = (
<Button>
{searchTerm.operator.dateOnly
? dayjs(searchTerm.searchValue).format(DATE_ONLY_FORMAT)
: dayjs(searchTerm.searchValue).format(DATE_TIME_FORMAT)}
</Button>
);
break;
}
case 'NO_VALUE': {
searchValueComponent = null;
break;